创建自定义Docker镜像

2022-05-23
2542

Docker

镜像

创建镜像
有时从Docker镜像仓库中下载的镜像不能满足我们的要求,此时可以基于这个镜像(基础镜像)封装一个自己的镜像。

两种方式:

1、更新镜像:使用docker commit命令

2、构建镜像:使用docker build命令,需要创建Dockerfile文件

一、更新镜像

先使用基础镜像创建一个容器,然后对容器进行修改,最后使用commit命令提交为一个新的镜像

步骤:

a、根据基础镜像,创建容器

docker run ­­--name mytomcat ­-p 8080:8080 -­d tomcat


b、修改容器

docker exec ­-it bcd08edac78d /bin/bash 
cd webapps/ROOT 
rm ­-f index.jsp 
echo welcome to tomcat > index.html 
exit



c、提交为新镜像,语法: docker commit ­m="描述消息" ­a="作者" 容器id或容器名 镜像名:tag


docker commit -­m="修改默认索引页" -­a="AAA" bcd08edac78d itany/tomcat:v1


d、使用新镜像运行容器

docker run --­­name tomcat_v1 -­p:8080:8080 ­-d itany/tomcat:v1



二、构建镜像

根据Dockerfile文件来自动构建镜像

Dockerfile是一个包含创建镜像所有命令的文本文件,使用docker build命令可以根据Dockerfile的内容创建镜像

步骤:

a、创建一个Dockerfile文件 vi Dockerfile

# 指定基础镜像 
FROM tomcat 
# 指定作者 
MAINTAINER yuanke@163.com 
# 执行命令 
RUN rm ­-f /usr/local/tomcat/webapps/ROOT/index.jsp 
RUN echo "welcome to tomcat!" > /usr/local/tomcat/webapps/ROOT/index.html



b、构建新镜像,语法: docker build ­f Dockerfile文件的路径 ­t 镜像名:tag 命令执行的上下文

docker build ­-f Dockerfile ­-t itany/tomcat:v2 .


c、使用新镜像运行容器

docker run ­-p 9999:8080 ­-d itany/tomcat:v