最近了解到docker也是使用的比较多的一款环境的软件,然后自己就根据网上的学者搭一下nmp的php开发环境
1.首先安装docker (win10专业版的)
安装主要是注意是否开启了
开启后基本都是可以安装成功
2.右下角右击
Switch to window 。。。。因为我已经切换了,所以这里就显示让我切换成linux的
3. 更换镜像,外国镜像后面docker run会很慢,这边还是建议切换成国内的镜像
"registry-mirrors": ["https://registry.docker-cn.com"] 这是docker官方中国的镜像源
以上就是所有的准备工作了
接下来我们首先列出来需要搭载的环境
mysql mysql5.7
php php7.3
nginx nginx1.18
首先在自己的盘里面创建文件
接下来我们先知道docker命令的字母的意义
-v 挂载文件地址。因为每一个docker的容器都是相对一个独立的空间,如果想更方便的管理,最好还是将环境的日志以及配置文件都挂载在电脑的文件上,这样可以更加便利的管理
-p 对应上的端口号。
--name 给容器命名
-d 开启docker自动运行容器
--link 连接对上的容器
-e 设置容器的环境变量
接下里开始搭载环境
1.mysql的搭建
这时候报错了
将设置中的"experimental"改为true
mysql 安装并且启动成功
docker run -d -p 3306:3306 -v D:/docker/mysql/conf:/etc/mysql/conf.d -v D:/docker/mysql/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 --name test mysql:5.7
-d 自动启动
-p 3306端口
-v 本地地址 : docker 容器里面的地址
-e 设置密码
--name 名为test的数据库
这时候我们可以用
docker ps 查看一下已经开启并且在运行的容器mysql57
如果想测试自己是否开启了我这是用了navicat来试一下
连接成功,算是完成了 第一步把。
2. php的搭建
docker run -d -v D:/docker/www:/var/www/html -p 9000:9000 --link test:mysql --name php73 php:7.3-fpm
3. 搭建nginx环境
因为我们在开发的过程,比较容易触及到nginx的配置文件,所以我们需要把配件文件指向到我们的本地的目录,避免改动nginx的配置文件导致无法启动nginx的容器
所以首先我们先把nginx跑一下
docker run -p 80:80 --name docker_nginx nginx:1.18
这时候我们需要先关闭docker容器然后复制过去
docker container cp docker_nginx:/etc/nginx/conf.d D:/docker/nginx/conf
复制成功后,将这个nginx容器给删除
重新生成一个并将nginx的日志以及配置文件映射到本地即可
这时候环境已经基本搭载好了
在www下创建一个index.php 文件
然后去到conf文件下面去修改配置文件
在www下创建index.php文件这时候就可有正常访问了