[英]build docker image with circleci/php:7.3-cli-node-browsers
[英]Docker PHP image helpers and build dependenices
该指令来自官方docker php image的描述:
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng12-dev \
&& docker-php-ext-install -j$(nproc) iconv mcrypt \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j$(nproc) gd
我有两个问题:
-dev
后缀用于哪些软件包? 我怎么知道我需要他们,特别是哪个? -j$(nproc)
? 该-dev
表明该软件包包含headers
和libraries
,你可以用它来链接,然后在这种情况下,它会被其他应用程序或库编译iconv
使用mcrypt
和gd
使用freetype
, jpeg62-turbo
和png12
。
该-j$(nproc)
命令是让安装程序知道有多少处理器make
在构建循环使用。
带-dev
后缀的软件包是用于不同库的开发文件。 这些可能是构建一个或多个PHP扩展所必需的。 例如,针对libjpeg62-turbo-dev的Google搜索显示它是“ libjpeg-turbo库的开发文件”。 PHP将在其某些图像处理功能中使用此库: http : //php.net/manual/zh/image.installation.php 。 如果您想要要求它们正常工作的功能,则应保留它们。 除非您真的想针对小尺寸或其他尺寸进行优化,否则我将保留所有这些内容。
-j$(nproc)
要求它根据可用处理器的数量并行安装扩展。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.