下载镜像
docker pull nginxdocker pull bitnami/php-fpm
环境配置
在物理机构建好你的开发环境需要的配置目录以及Nginx的配置文件,方便管理。
构建容器
docker run --name myFpm ?-v /Users/zhen/www-root/work:/usr/share/nginx/html -v /Users/zhen/docker/lnmp/nginx:/etc/nginx/conf.d -d bitnami/php-fpmdocker run --name myNginx -p 80:80 ?-v /Users/zhen/www-root/work:/usr/share/nginx/html -v /Users/zhen/docker/lnmp/nginx:/etc/nginx/conf.d -d nginx
虽然一切正常但是还是无法通过物理机器访问,查看下ip信息,发现了问题。来修改Nginx配置吧。
docker inspect myFpm | grep "IPAddress"docker inspect myNginx | grep "IPAddress"
server { ???listen 80; ???server_name ?xxxx.com xxxxx.com xxxx.com ???index index.html index.htm index.php; ???root /usr/share/nginx/html/mhadmin; ???????#access_log /tmp/mhadmin.log; ???#error_log /tmp/mhadmin_error.log error; ???????location / { ???????index ?index.php index.html; ???????try_files $uri $uri/ /index.php?$query_string; ???????if (!-e $request_filename) { ???????????rewrite ^(.*)$ /index.php?s=$1 last; ???????????break; ???????} ???} ???location ~ \.php { ???????fastcgi_pass ??172.17.0.2:9000; ????????fastcgi_index ?index.php; ???????fastcgi_param ?SCRIPT_FILENAME ?$document_root$fastcgi_script_name; ???????include ???????fastcgi_params; ???} ???location ~ /\.ht { ???????deny ?all; ???}}修改fastcgi_pass ??127.0.0.1:9000; 为:fastcgi_pass ??172.17.0.2:9000;
搞定。
常用的命令
进入容器
docker exec -it myNginx /bin/bash
复制容器内的配置到宿主机器
docker cp myNginx:/etc/nginx/conf.d/default.conf ./default.conf
复制宿主机器文件到容器
docker cp ./default.conf myNginx:/etc/nginx/conf.d/default.conf
nginx 重新加载配置
service nginx reload
停止所有容器
docker stop $(docker ps -a -q)
删除所有容器
docker rm $(docker ps -a -q)
Docker - Nginx + Php-fpm 开发环境
原文地址:https://www.cnblogs.com/pzblog/p/8279211.html