docker创建nginx+php-fpm环境

Posted 御用闲人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker创建nginx+php-fpm环境相关的知识,希望对你有一定的参考价值。

下载镜像

docker pull bitnami/php-fpm    #下载php-fpm镜像
docker pull nginx          #下载nginx镜像

创建volume

docker volume create webpage  #用于容器web页面存放,存储位置默认为:/var/lib/docker/volume/webpage/_data/

创建php-fpm、nginx镜像

docker run -d --name php-fpm -v webpage:/usr/share/nginx/html bitnami/php-fpm
docker run -d --name nginx -p 8888:80 -v webpage:/usr/share/nginx/html --link php-fpm:php-fpm nginx 

修改docker下default.conf文件,文件目录/etc/nginx/conf.d/default.conf ,内容如下:

server {
    listen       80;
    server_name  localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ .php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

若不方便修改,可以使用docker cp命令,在宿主机上写好再复制到容器中替换,复制命令如下:

docker cp default.conf nginx:/etc/nginx/conf.d/default.conf

重启nginx容器

docker restart nginx

 

以上是关于docker创建nginx+php-fpm环境的主要内容,如果未能解决你的问题,请参考以下文章

使用 docker 搭建 nginx+php-fpm 环境 (两个独立镜像)

docker下如何搭建MySQL+php-fpm+nginx容器环境,本文详解

PHP-fpm 远程代码执行漏洞(CVE-2019-11043)源码分析

docker 部署nginx、php-fpm错误记录

使用 docker 在 CentO 上设置 PHP-FPM、Nginx、Mariadb

如何为多个PHP-FPM容器构建单一的Nginx Docker镜像