大家好,又见面了,我是你们的朋友全栈君。
一、docker安装:
-
docker一次构建可放在任何地方就可以运行,不需要进行任何改变DocKer 就类似于一个容器。这个容器就好像咱们常用的虚拟机一样,当我们虚拟机里面安装过VS、SQL、浏览器 … 之后咱们就把虚拟机镜像备份下来、等到下一次需要重新搭一个环境的时候,就可以省去很多事情了,直接把备份的虚拟机运行起来,该有的就都有了,省去了很多事情。
-
安装指令:
$ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
$ sudo yum install docker-io -
启动
$ sudo service docker start
二、编辑启动脚本:
-
在系统中建立一个专门存放docker启动的脚本,分别是,start_docker_mysql.sh,start_docker_nginx.sh,start_docker_php.sh,完成后目录如下
-
1.启动脚本建立好了以后首先开始mysql的安装,在start_docker_mysql.sh里面写入内容:
sudo docker run --name mysql -p 3306:3306 -d -e MYSQL_ROOT_PASSWORD=xiukang -v /home/docker-mysql:/var/lib/mysql registry.cn-hangzhou.aliyuncs.com/qinyujia-test/mysql
具体代码内容指令请查看docker相关教程 -
2.编写启动php脚本。在start_docker_php.sh中写入一下内容:
sudo docker run --name php --link=mysql:mysql -d -v /home/wwwroot:/home/wwwroot -v /home/wwwlogs:/home/wwwlogs -v /tmp:/tmp -v /etc/localtime:/etc/localtime --privileged=true wgkj/php
-
3.编写启动nginx脚本。在start_docker_nginx.sh中写入一下内容:
三、添加nginx 配置文件:
-
在启动nginx 脚本中可以看到在
/home/pure_nginx_vhosts
这个目录是存在nginx.conf的文件,我们采用多站点运行方式得话, 所有配置文件需要统一放这个目录下,如图:
本次只添加了一个默认的配置文件,配置文件内容如下:
这是默认的配置文件,其他的项目配置文件可以参考该文件进行编写, 具体指令请参考nginx配置教程 -
在nginx配置完后,咱们就需要配置项目文件了,从启动nginx 的脚本中,我们将
/home/wwwroot/
目录统一设置为项目目录,/home/wwwlogs/
目录统一设置为日志目录,项目中的日志,docker的日志均可放这里。现在我们需要配置一个nginx访问地址,在`/home/wwwroot/`目录下建立 default目录 然后新建 index.html或者index.php文件,文件内容随意。
我的内容如下
四、运行项目:
- 按顺序执行编写的三个脚本,顺序本别是,start_docker_mysql.sh -> start_docker_php.sh -> start_docker_nginx.sh
- 执行完成后入下图:
mysql,php,nginx都启动成功的话,会是上图的情况, - 如果没有启动成功,请检测自己的脚本是否编写有有误,可以执行
docker logs -f mysql
查看启动日志等。
五、运行访问:
- 项目访问时需要访问到服务器的80,3306 端口,请检查该端口是否开放
- 在浏览器上输入服务器ip地址或者配置好的域名,出现如下图则为配置成功
- 同样MySQL可以以用mysql客户端进行访问
六、结束语:
对此,docker部署nginx,mysql,php基本结束
对docker或者linux不太熟悉的同学,在部署中若遇到问题,可以查阅相关的文档或者联系我(1102842479@qq.com),遇到问题是正常情况,大家需要静下心来,找到问题的所在,才能成功
谢谢支持
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/128239.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...