【微服务架构 - 02 - Docker】02 使用 Dokcerfile 定制镜像

以交互的方式进入容器并修改容器的内容

启动容器

$ docker run -p 8080:8080 tomcat

查看运行的容器 id

root@ubuntu:~# docker ps 
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS                    NAMES
89cc320ba597        tomcat              "catalina.sh run"   About a minute ago   Up About a minute   0.0.0.0:8080->8080/tcp   vigorous_lehmann

以交互的方式进入容器

$ docker exec -it [容器id] bash

进入 webapps/ROOT 修改 index.jsp 的内容

root@89cc320ba597:/usr/local/tomcat# cd webapps/ROOT/
root@89cc320ba597:/usr/local/tomcat/webapps/ROOT# echo "Hello Docker Tomcat" >> index.jsp

启动 tomcat,查看效果:
在这里插入图片描述


使用 Dockerfile 修改容器的内容

进入 /usr/local/ 创建 Docker 目录:

root@ubuntu:/# cd /usr/local/
root@ubuntu:/usr/local# mkdir docker/

进入 Docker 目录,创建 tomcat 目录

root@ubuntu:/usr/local# cd docker
root@ubuntu:/usr/loca/dockerl# mkdir tomcat

进入 tomcat 目录,编辑 Dockerfile 文件

root@ubuntu:/usr/local/tomcat/# vi Dockerfile

编写 Dockerfile 脚本


FROM tomcat
WORKDIR /usr/local/tomcat/webapps/ROOT/
RUN rm -fr *
RUN echo "Hello Docker Tomcat" > /usr/local/tomcat/webapps/ROOT/index.html

构建镜像

root@ubuntu:/usr/local# docker build -t myshop .
Sending build context to Docker daemon  15.36kB
Step 1/4 : FROM tomcat
 ---> 1a51cb5e3006
Step 2/4 : WORKDIR /usr/local/tomcat/webapps/ROOT/
 ---> Running in f44ab6505e52
Removing intermediate container f44ab6505e52
 ---> 5f0eb010a988
Step 3/4 : RUN rm -fr *
 ---> Running in a578a450b8c9
Removing intermediate container a578a450b8c9
 ---> 236403c51b37
Step 4/4 : RUN echo "Hello Docker Tomcat" > /usr/local/tomcat/webapps/ROOT/index.html
 ---> Running in 2e4ad71b7632
Removing intermediate container 2e4ad71b7632
 ---> 2e29872acbcb
Successfully built 2e29872acbcb
Successfully tagged myshop:latest

启动用 Dockerfile 构建的镜像

扫描二维码关注公众号,回复: 5066797 查看本文章
root@ubuntu: docker run -p 8080:8080 tomcat

查看启动的 tomcat

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_37581282/article/details/86619490