Docker操作(三) 自定义镜像
Docker操作(三)自定义镜像
自定义镜像是Docker解决配置环境问题的一个方案:
- Docker将整个项目连同相关的运行环境一并打包,制作成一个镜像。
- 当需要快速部署项目的时候,只需要运行镜像生成容器,访问该容器即可。
自定义镜像步骤
1、创建名为Dockerfile的文件
- 当项目打包方式是zip时
#指定基础镜像 tomcat:8.5.15需要有
FROM tomcat:8.5.15
#指定自定义镜像的工作目录,就相当于进入到了这个目录
WORKDIR /usr/local/tomcat/webapps/ROOT/
#使用RUN执行shell命令。./是当前ROOT目录
#移除ROOT目录下的所有文件
RUN rm -rf ./*
#复制内容 目录一:当前Docker服务器目录 目录二:容器内部目录
COPY ./ROOT.zip ./
#执行shell命令 解压
RUN unzip ./ROOT.zip
RUN rm -rf ./ROOT.zip
- 当项目打包方式是tar.gz时
项目原先是zip格式的需要先unzip命令解压,再用tar命令压缩
#指定基础镜像
FROM tomcat:8.5.15
#指定自定义镜像的工作目录,就相当于进入到了这个目录
WORKDIR /usr/local/tomcat/webapps/ROOT/
#使用RUN执行shell命令。这里./就是当前ROOT目录
RUN rm -rf ./*
#对于tar.gz文件,使用add命令,可以做【复制,解压,删除】
#目录一:当前Docker服务器目录 目录二:容器内部目录
ADD ./ROOT.tar.gz ./
2、把ROOT.zip或ROOT.tar.gz(unzip解压ROOT.zip再tar压缩ROOT.tar.gz)复制到Dockerfile文件所在目录下;
再把ROOT.zip或ROOT.tar.gz以及Dockerfile文件放到自定义目录下
3、进入到自定义目录中,执行构建自定义镜像的命令
#docker build -t 自定义镜像的名称:版本 . 注意有个小点不可缺,代表上下文路径
#如果没有指定版本,则为latest
docker build -t ssm:1.0.2 .
4、查看自定义镜像
docker images
5、基于自定义镜像运行容器
#查看是否有容器正在运行 避免容器端口冲突
docker ps
docker run -d -p 8088:8080 --name tomcat8088 187c0b11bf9c
6、访问容器
http://宿主机ip:8088
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!