Docker制作lamp镜像并在其他机器上部署

发布于:2024-03-01 ⋅ 阅读:(85) ⋅ 点赞:(0)

为了方便将自己的LAMP运行环境和项目在其他机器上部署或发布,可以用基于Dockerhub
里的mattrayner/lamp镜像打包自己需要的镜像。

1、先选择合适的镜像文件
镜像mattrayner/lamp有多个版本,根据自己需要选择下载
在这里插入图片描述
2、镜像在首次运行时会自动下载,也可以先pull拉取镜像后在运行容器

docker run -d --name=lamptest1 -p 8081:80 -p 3401:3306 -v /lamptest/test/:/app mattrayner/lamp:latest-1604-php5

docker run --name=[容器名称] -p 8081:80 -p 3401:3306 -v [项目代码路径]:/app mattrayner/lamp:latest-1604-php5

这段命令的内容是运行一个镜像容器,容器名称为lamptest1,
-p是将容器的80端口映射到宿主机的881端口上,这样访问宿主机ip:8081访问的是容器的80端口,3306端口类似。
-v是将宿主机的/lamptest/test/目录挂载到容器的/app下,镜像nginx的访问目录默认的是/app
最后是镜像及版本

首次运行拉取镜像试讲可能比较久

在这里插入图片描述
3、可以查看容器是否已经运行

docker ps

如果没有运行可以查看容器是否存在,已经存在可以重新启动或者删除后重建

docker ps -a

在这里插入图片描述启动lamptest1

docker restart lamptest1

在这里插入图片描述4、进入容器
可以进入容器设置安装其他自己需要的php扩展或其他插件,修改配置等

docker exec -it lamptest1 /bin/bash

在这里插入图片描述
5、安装容器后mysql的root密码是空的,直接回车登录后修改密码,必须修改完root密码后才可使用phpmyadmin登录

mysql -uroot -p

修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

6、查看apache2配置文件

cat /etc/apache2/sites-available/000-default.conf 

到此lamp环境就搭建完成了。
7、使用commit制作镜像

docker commit -m="提交的描述信息" -a="作者" 容器id 要创建的镜像名:标签

在这里插入图片描述
8、查看本地镜像并将镜像保存为本地文件其中5bbbccffa51b为镜像id,最后为保存地址及名称
在这里插入图片描述
查看生成的文件,文件比较大
在这里插入图片描述
9、将生成的文件复制到需要安装环境的宿主机上后使用load方法加载刚才上传的tar文件

docker load < /lamptest/qzlamp-1604-php5.tar 

在这里插入图片描述

10、在新的机器上再此使用docker images命令查看本机的镜像,检查刚才load的镜像有没有加载进来,发现加载进来的镜像名称、标签均为none,使用docker tag 5bbbccffa51bqzlamp:qzlamptest 修改为原来的镜像名称和标签名称,其中5bbbccffa51b 为images id

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到