导读 | 在按照本文档的步骤操作前,需要安装好 Docker |
Docker Image 的发布
方法1:保存 Image 到 tar 包
语法:docker save -o 导出的镜像名.tar 本地镜像名:镜像标签
[root@Docker docker-build]# docker save -o centos-httpd-docker-image.tar centos:httpd [root@Docker docker-build]# ll -h total 275M -rw-r--r--. 1 root root 154 May 17 23:19 Dockerfile -rw-------. 1 root root 275M May 17 23:37 centos-httpd-docker-image.tar -rw-r--r--. 1 root root 37 May 17 23:27 index.html -rwxr-xr-x. 1 root root 29 May 17 23:25 start.sh
使用导入本地镜像
[root@Docker docker-build]# docker rmi -f centos:httpd #删除镜像,这里写自己镜像的 ID 或名称
[root@Docker docker-build]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos apache b8822ec8a7bb 27 minutes ago 280MB centos latest 470671670cac 4 months ago 237MB [root@Docker docker-build]# docker load -i centos-httpd-docker-image.tar Loaded image: centos:httpd [root@Docker docker-build]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos httpd 85b4a3657ced 8 minutes ago 280MB centos apache b8822ec8a7bb 29 minutes ago 280MB centos latest 470671670cac 4 months ago 237MB
方法 2:Push Image To Docker Hub 发布到外网
1、Signup on docker hub & create repo 注册一个帐号 //hub.docker.com/ 2、Login to docker hub # docker login -u userabc -p abc123 -e jaking@gmail.com 3、Push image to docker hub #上传镜像 # docker push centos:httpd 4、Pull image from docker hub #下载镜像 # docker pull userabc/centos:httpd # 用户名/镜像名
Container 容器端口映射
实战:Container 端口映射
启动 container
[root@Docker ~]# docker run -d -p 80:80 centos:httpd /bin/bash -c /usr/local/bin/start.sh cf183879c15bd06523ecb6b5e19aec561d679fa5f3bd1842cb2d2994f0d79b04
注: -p 物理机的 80 端口:容器实例的 80 端口 ,把容器中的 80 端口映射到物理机上的 80 端口
另一种启动方式
[root@Docker ~]# cd /docker-build [root@Docker docker-build]# docker run -d -p 80:80 centos:httpd /bin/bash -c start.sh
在物理机上查看容易状态
[root@Docker ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cf183879c15b centos:httpd "/bin/bash -c /usr/l…" 24 seconds ago Up 23 seconds 0.0.0.0:80->80/tcp happy_mahavira
查看物理机上开启的 80 代理端口
[root@Docker ~]# netstat -pantu | grep 80 tcp6 0 0 :::80 :::* LISTEN 10870/docker-proxy udp6 0 0 fe80::c43:91ff:fe1a:123 :::* 7829/ntpd udp6 0 0 fe80::42:deff:fe9c::123 :::* 7829/ntpd udp6 0 0 fe80::250:56ff:fe35:123 :::* 7829/ntpd
测试
在浏览器输入 //192.168.10.7
总结
以上就是 Docker Image 的发布和 Container 端口映射的操作过程,希望能帮助到大家。
本文原创地址://lrxjmw.cn/docker-image-container.html编辑:public,审核员:逄增宝