php windows10 docker制作lnmp镜像环境

1 篇文章 0 订阅
1 篇文章 0 订阅

宿主机环境:Windows10
容器镜像环境:CentOS Linux 7 (Core)!

使用docker小记
参考文档:
1、Win10 docker 创建lnmp镜像

https://blog.csdn.net/sure0824/article/details/82753172

Windows10环境写的docker安装包下载地址:

打开https://www.docker.com/products/docker-desktop页面,点击Download Desktop for Mac and Windows直接下载,或许有点慢,
可以找个翻墙代理工具进行下载,如:蓝灯

或者在这里下载安装包:

https://download.docker.com/win/stable/Docker for Windows Installer.exe

因为安装docker,需要将Windows10系统下的磁盘进行虚拟化,安装和运行期间遇到的问题,如:

Hyper-V为灰色按钮,勾选不了(BIOS中未启用虚拟化支持系列~~例如:因此无法安装Hyper-V)

对应解决方案可以在百度或者谷歌里进行查询解决,期间涉及到BIOS设置以及保存操作:

需要我们根据使用的电脑硬件配置来设置和保存。

我使用的电脑是华硕,解决方案如下链接地址里有解决方法:
https://www.cnblogs.com/dunitian/p/5539034.html

2、docker创建lnmp镜像
https://blog.csdn.net/zhang197093/article/details/78709248

3、docker logs-查看docker容器日志
https://www.jianshu.com/p/1eb1d1d3f25e

重点的步骤:
、制作镜像文件,包括(Docker 拉取镜像创建镜像、修改镜像内容、提交镜像)
1、拉取镜像文件,如(docker pull 镜像name)

docker pull centos

2、使用下载的镜像启动容器
修改tag名称,如(docker tag 镜像id IMAGE)

docker tag 0b2616b0e5a8 centos:lnmp

启动容器

docker run -t -i centos:lnmp /bin/bash

3、修改镜像内容
(1)、比如使用yum源安装:yum install nginx php php-fpm mysql

(2)、在镜像里设置centos7 开机自动执行shell脚本,脚本内容根据自己的需求来编写。

(3)、centos7 开机自动执行shell脚本,如:
自己新建一个脚本,如:

vi /bin/centnet-service.sh

经过后面的几个步骤后,这个脚本在开机的时候会执行,在这个脚本里面可以写你开机的时候想执行的命令,如启动nginx,php-fpm等服务
在脚本中输入启动服务的命令,如(开机启动nginx):3

#! /bin/bash
systemctl start nginx.service
systemctl start php-fpm.service
systemctl start mariadb.service

执行如下命令,将该脚本标记为可执行文件(添加可执行的权限)

chmod +x /bin/centnet-service.sh

执行如下命令将/etc/rc.d/rc.local文标记为可执行文件
在centos7中,/etc/rc.d/rc.local文件的权限被降低了,开机的时候执行在自己的脚本是不能起动一些服务的,执行下面的命令可以文件标记为可执行的文件

chmod +x /etc/rc.d/rc.local

打开/etc/rc.d/rc.local文件,在最后面添加如下脚本

/bin/centnet-service.sh

这样,centnet-service.sh这个脚本在开机的时候就会被执行了,以后再这里面写启动服务的命令就可以了

(5)清理不再需要的数据以缩减镜像的尺寸,然后docker commit生成新镜像;
清理yum源安装时产生的文件和数据

yum clean all

(4)、最后退出容器;

exit

4、提交镜像,如(docker commit 容器id centos:lnmpv2)

docker commit 0b2616b0e5a8 centos:lnmpv2

5、删除docker中的镜像,如(docker rmi 镜像id)
docker rmi 0b2616b0e5a8

、使用制作好的镜像文件,启动容器
查看当前正在运行的容器
docker ps

查看容器状态(对于已退出的容器)
docker ps -a

1、使用镜像启动容器
docker run -itd --privileged=true -v /e/wwwroot:/www -p 8888:80 centos:lnmpv2 /usr/sbin/init
-i: 以交互模式运行容器,通常与 -t 同时使用
-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 让容器在后台运行
-v 添加目录映射(宿主机Windows10下的E盘目录wwwroot:镜像里/www目录)
-p 添加宿主机到容器的端口映射(宿主机端口:容器端口)
-e 设置环境变量,这里是设置mysql的root用户的密码
–name 容器的名字`

2、进入启动的容器中进行操作
docker exec -it a3194c8a8e4a /bin/bash
(进入容器中进行操作,如开启nginx,php-fpm,mysql)
systemctl start nginx.service
systemctl start php-fpm.service
systemctl start mariadb.service

、常用docker命令
1、关闭容器,如(docker stop 容器id)

docker stop a3194c8a8e4a

2、开启容器,如(docker start 容器id)

docker start a3194c8a8e4a

3、查看最近30分钟的日志,如:( $ docker logs --since 30m CONTAINER_ID )

docker logs --since 30m 8abad0cf305d

4、删除容器,如(docker rm 容器id)

docker rm 8abad0cf305d

、验证环境是否配置成功
打开Windows10任意浏览器输入:
宿主机Windows10下的E盘目录wwwroot创建index.php或者*.php文件进行测试

http://127.0.0.1:8888/

、下一次使用docker容器
1、找到停止运行的容器

docker ps -a
2、启动容器

docker start a3194c8a8e4a

、开始正常编码工作

无休止的Codeing................................

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值