commit 提交 -m message 信息(为什么要提交这个镜像) -a author 作者
容器编号 新的镜像的名称
docker commit a2 webapp2
https://hub.docker.com (将自己的镜像上传到这里)
docker login
镜像改名 docker tag webapp2 lfp1979[!!!你的注册的用户名!!!]/webapp
正式上传 docker push lfp1979/webapp
将镜像保存为文件,可以与人分享,交流
docker save -o(output) 文件名称 镜像名称
docker save -o lfp1979_webapp.tar.gz lfp1979/webapp
载入镜像,把别人的镜像文件导入,生成一个自己的镜像
docker load --input lfp1979_webapp.tar.gz
docker run -d webapp2 /bin/sh -c "while true;do echo hello docker;sleep 1;done"
查看后台容器的输出 docker logs 编号
保存容器(区别与保存镜像) docker export 编号 > 文件名
docker export 96 > webapp.tar
通过文件加载一个容器,让它成为一个镜像
cat 保存的文件名 | docker import - 镜像名称
cat webapp.tar | docker import - webapp3
端口映射:开启容器的web服务 docker run -d -P webapp2 python app.py
只要命令不退出,则容器不会退出!
ports 0.0.0.0:32768->5000/tcp 前面是linux主机:端口--> 容器端口
http://192.168.230.150:32768/
指定用哪个端口来映射 docker run -d -p 8000:5000 webapp2 python app.py
前面是本机端口(在符合一定规则时可以任意指定),冒号后面是容器端口(不能改,是内定的)
http://192.168.230.150:8000/
作业:
1.通过镜像training/webapp 运行一个容器,添加一个目录dir1,然后将容器保存为
镜像 zuoye。
2. 通过镜像zuoye运行一个容器,检查dir1在不在,保存镜像为文件zuoye.tar.gz
3.删除镜像 zuoye,用文件zuoye.tar.gz来还原
4. 通过镜像training/webapp 运行一个容器,开启web服务,绑定端口6000-->5000,
并通过浏览器验证