以交互的方式进入容器并修改容器的内容
启动容器
$ 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