700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > docker 搭建nginx php mysql_docker搭建nginx+mysql+php

docker 搭建nginx php mysql_docker搭建nginx+mysql+php

时间:2018-10-02 17:28:10

相关推荐

docker 搭建nginx php mysql_docker搭建nginx+mysql+php

主要概念是 容器 和 镜像。

要先有镜像,启动镜像后,才有容器的出现。

不恰当地用类和实例来理解,镜像是类,容器是实例。

部分命令

拉取镜像

docker pull {{具体镜像}}

查看本机镜像

docker images

查看运行中的容器

docker ps

删除镜像

docker rmi {{镜像id}}

查看所有容器

docker ps -a

进入某个容器(exec也可以更换为attach)

docker exec -it {{容器id/容器名称name}} /bin/bash

退出某个容器(如果使用attach方式进入,退出后容器将会停止;而exec则不会)

exit

启动容器

docker run [参数列表] {{容器id/容器名称name}}

停止容器

docker stop {{容器id/容器名称name}}

删除容器

docker rm {{容器id/容器名称name}}

查看容器日志

docker logs {{容器id/容器名称name}}

准备工作

1. 安装docker,并确保已启动

2. 拉取需要的三个镜像:nginx、mysql、php

启动mysql容器1. 需设置MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD三个中的任意一项

2. ef08065b0a30 是mysql的镜像id,也可使用镜像标签

docker run -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql -v /usr/local/mysql:/usr/local/mysql ef08065b0a30

启动php容器1. {{mysql-container-id} 为mysql容器的id

2. 62c88af9f064 是php镜像id,也可使用镜像标签

docker run -itd -p 9000:9000 --link {{mysql-container-id}}:php --name phpfpm -v /var/www:/var/www 62c88af9f064

启动 nginx容器1. {{php-container-id}} 为php容器id

2. 4037a5562b03 为nginx镜像id,也可使用镜像标签

docker run -itd -p 80:80 --link {{php-container-id}}:nginx --name nginx -v /var/www:/var/www 4037a5562b03

修改nginx容器中的配置

1. 把nginx容器中的配置文件拷贝出来

docker cp {{nginx-container-id}}:/etc/nginx/conf.d/default.conf /var/

2. 修改配置

把配置中root的路径修改为容器中项目的目录路径

把配置中fastcgi_pass中的域名修改为php容器id(或php容器名称name), 端口保留不变

fastcgi_param中/scripts$fastcgi_script_name;修改为$document_root$fastcgi_script_name;

3. 把修改好的配置,拷贝回nginx容器中

docker cp default.conf {{nginx-container-id}}:/etc/nginx/conf.d/default.conf

检测nginx容器配置文件

1.进入nginx容器

docker exec -it {{nginx容器id}} /bin/bash

2. 检测配置

nginx -t

3. 检测通过,则重启nginx

nginx -s reload

4. 退出容器

exit

测试页面和数据库

在php项目目录中编写测试代码,会自动映射到容器中。

然后访问测试页面。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。