为了版本控制和安全,我想将两个Dockerfile合并为一个,然后为. sock=创建一个目录
第一个Dockerfile一半
FROM debian:jessie
ENV NGINX_VERSION 1.11.6-1~jessie
RUN apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 \
&& echo "deb http://nginx.org/packages/mainline/debian/ jessie nginx" >> /etc/apt/sources.list \
&& apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y \
ca-certificates \
nginx=${NGINX_VERSION} \
nginx-module-xslt \
nginx-module-geoip \
nginx-module-image-filter \
nginx-module-perl \
nginx-module-njs \
gettext-base \
&& rm -rf /var/lib/apt/lists/*
# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log \
&& ln -sf /dev/stderr /var/log/nginx/error.log
EXPOSE 80 443
#CMD ["nginx", "-g", "daemon off;"]
第二个Dockerfiel代码是这个PHP代码的一半,相应的文件比这个代码高一级。我不会公开9000端口并注释掉CMD。所有这些都通过supervisord进行管理。
我在docker compose的帮助下构建了它
version: '2'
services:
web:
build:
context: ../../builds/nx1116Php71RC6Comp123_J
dockerfile: Dockerfile
image:
tl_nx1116php71rc6comp123:v1
#mounts HOST:CONTAINER (the actual server to the container system)
volumes:
#nginx
- ../../data/nxphp/nginx1116/html:/usr/share/nginx/html
- ../../data/nxphp/nginx1116/conf.d:/etc/nginx/conf.d
- ../../logs/nxphp:/var/log/nginx
#PHP
- ../../data/nxphp/php71fpm/etc:/usr/local/etc
# - ../../logs/nxphp/php71fpm:?????
#Supervisor
- ../../data/nxphp/supervisor/supervisor.conf:/etc/supervisor.conf
- ../../logs/supervisor:/var/log/supervisor
#foward port HOST:CONTAINER
ports:
- "80:80"
- "443:443"
当我这样运行它时,设置php和nginx conf来使用9000都可以正常工作。
但我想和你谈谈。短袜没有,所以我需要创建一个/目录,nginx可以将它放在这个目录中。因此,在我的脑海中,我把docker文件放在了末尾
RUN set -xe \
mkdir -p /var/run/php-fpm
&& chown www-data:www-data /var/run/php-fpm
然而,这总是以建筑错误而告终。当我执行部分构建docker映像时,我找不到/var/run/php fpm。我也试着把它投入运行,但结果是一样的。从它发出两个RUN命令“工作”的方式,我没有错误,但文件夹仍然不存在,然后很明显我的图像退出,它找不到。袜子文件夹。
任何帮助都将不胜感激
这一行有两个错误:
RUN set -xe \
mkdir -p /var/run/php-fpm
&& chown www-data:www-data /var/run/php-fpm
第一个是mkdir
是没有
RUN set -xe \
&& mkdir -p /var/run/php-fpm \
&& chown www-data:www-data /var/run/php-fpm
问题内容: 我的Dockerfile创建一个目录,将其chown,然后再列出该目录。该目录仍归root用户所有。这是为什么? 这是Dockerfile: 这是“ docker build”的输出: Docker版本1.2.0,构建fa7b24f 主机运行Ubuntu 12.04,但具有3.13.0-36通用内核。 问题答案: 回答我自己的问题:它声明为卷。如果取出VOLUME指令,则将生效。 此外
我安装了nginx+php+mysql,我的phpmyadmin运行良好。 我下载了wordpress,然后我试着运行它,得到了错误: 我在php5-fpm.sock listen.mode、group、owner中搜索并尝试了所有更改,但仍然不起作用。 请帮助我如何解决这个关键问题。
我刚刚更新到Laravel5.2,然后尝试使用php artisan服务 像这样的错误 PHP致命错误:在E:\xampp\htdocs\laravel5\vendor\laravel\framework\src\light\Foundation\ProviderRepository中找不到类“App\Providers\AuthServiceProvider”。php在线146 [Symfony
我有下面的搜索片段,当我只使用mysql表中的value1和value2数据时,它就工作了。 当我添加到下面的例子中的value e1r和value e2r的查询中,并尝试在页面上进行搜索时,它会给我这个错误这意味着我在查询中有一个错误。 我到底做错了什么?我能得到一点帮助吗?谢谢! 注意:我的问题不是关于给定的错误。
我的错误日志从nginx一直说: [错误]82305#0:*542243 connect()到unix:/var/run/php5 fpm。连接到上游时sock失败(146:连接被拒绝) 大约每30秒。然而,我的php-fpm日志在这个错误中没有显示任何内容。只有nginx显示日志。php-fpm的nginx配置如下: 编辑:刚刚为nginx和php fpm添加了完整配置: php fpm:
我已经被困在导出UTF-8 CSV与Windows Excel上显示乱码文本的汉字好几天了。我使用PHP,已经添加了BOM字节标记,并尝试编码,但没有运气。 它们在记事本、谷歌电子表格甚至Mac数字上都能很好地打开。但不是在客户要求的Excel上。使用记事本打开时,编码显示为UTF-8。如果我手动将其更改为UTF-8并保存,该文件将在Excel上正常打开。 似乎BOM字节标记不会保存在输出中,因为