Docker Contos 搭建 PHP 环境
Docker Contos 搭建 PHP 环境
- uname -r //CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker
-
- yum -y install docker-io //安装docker
- service d ocker start //启动
-
镜像加速 网易镜像地址
- vi /etc/docker/daemon.json //添加镜像
{ "registry-mirrors": ["http://hub-mirror.c.163.com"] }
- 安装 Nginx
- docker pull nginx //拉取官方镜像
- docker images //查看
- docker run -p 80:80 -d --name mynginx -v /docker/www:/usr/share/nginx/www nginx //开启nginx应用容器
-p 80:80:将容器的80端口映射到主机的80端口 -d 后台运行(守护进程) --name mynginx:将容器命名为mynginx -v 将主机中当前目录下的www挂载到容器的www目录
- docker ps -a //查看容器启动情况
- Docker 安装 PHP
- docker pull php:7.2-fpm //拉取官方PHP镜像
- docker images //查看
- docker run -p 9000:9000 -d --name myphp-fpm -v /docker/www:/usr/share/nginx/www php:7.1-fpm //开启php-frm应用容器
- docker ps -a //查看容器启动情况
- docker inspect myphp-fpm | grep "IPAddress" //查看ip信息
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
[root@localhost ~]# docker exec -it mynginx bash //进入容器
vi /etc/nginx/conf.d/default.conf //修改配置文件
然后使用ctrl + p + q退出容器,使用exit的话会让容器停止。 -
docker cp mynginx:/etc/nginx/conf.d/default.conf ./default.conf
在宿主机修改配置文件的php部分,内容如下:server { listen 80; server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.php index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root html; fastcgi_pass 172.17.0.3:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/www$fastcgi_script_name; include fastcgi_params; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
- docker cp ./default.conf mynginx:/etc/nginx/conf.d/default.conf
- docker exec -it mynginx bash //进入容器中
- root@3218b3ad4e47:/# service nginx reload //重新载入nginx配置文件
- echo "<?php echo phpinfo();" > index.php //写phpinfo文件测试
访问成功
本作品采用《CC 协议》,转载必须注明作者和本文链接