例:创建基于Centos6.6的Tomcat镜像
安装jdk
安装tomcat
设置对外访问端口8080
设置加载容器时启动Tomcat
1.docker_test文件夹创建Dockerfile文件
2.Dockerfile文件内容如下:
3. docker build -t javatest:v1.0 .
使用当前目录的 Dockerfile 创建镜像,标签为 javatest:v1.0
4.docker run -it -p 8080 javatest:v1.0 /bin/bash
创建一个容器并将8080端口映射到主机上(这里运行的时候自动输出日志)
5. docker ps -a
我们可以看到容器的8080端口映射到主机上的32768端口上
镜像的导入导出:
(1)export 和 impost:
①选择javatest容器id将其导出为java_test.tar文件
②将javatest镜像删除
③重新将java_test压缩包导入到镜像中
④重新运行容器(我们发现他并没有执行Dockerfile文件的内容)
(2)save 和 load:
①将javatest:v1.0容器保存为压缩文件 docker save xxxx:v1.0 > xxxx.tar
②将javatest镜像删除
③重新将java_test压缩包导入到镜像中 docker load < xxxx.tar
④重新运行容器(我们发现他又执行Dockerfile文件的内容)
export 与save之间区别:
export方式导出的是当前容器的状态,并不会把镜像的信息导出(镜像的ENV和Entrypoint都为空)