LinuxProbe 发表于 2021-4-7 23:32:04

Docker Image 的发布和 Container 端口映射


在按照本文档的步骤操作前,需要安装好 Docker
Docker Image 的发布
方法1:保存 Image 到 tar 包
语法:docker save -o 导出的镜像名.tar 本地镜像名:镜像标签# docker save -o centos-httpd-docker-image.tar centos:httpd# ll -htotal 275M-rw-r--r--. 1 root root154 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使用导入本地镜像# docker rmi -f centos:httpd #删除镜像,这里写自己镜像的 ID 或名称# docker imagesREPOSITORY          TAG               IMAGE ID            CREATED             SIZEcentos            apache            b8822ec8a7bb      27 minutes ago      280MBcentos            latest            470671670cac      4 months ago      237MB# docker load -i centos-httpd-docker-image.tarLoaded image: centos:httpd# docker imagesREPOSITORY          TAG               IMAGE ID            CREATED             SIZEcentos            httpd               85b4a3657ced      8 minutes ago       280MBcentos            apache            b8822ec8a7bb      29 minutes ago      280MBcentos            latest            470671670cac      4 months ago      237MB方法 2:Push Image To Docker Hub 发布到外网
1、Signup on docker hub & create repo 注册一个帐号https://hub.docker.com/2、Login to docker hub# docker login -u userabc -p abc123 -e jaking@gmail.com3、Push image to docker hub #上传镜像# docker push centos:httpd4、Pull image from docker hub #下载镜像# docker pull userabc/centos:httpd # 用户名/镜像名Container 容器端口映射
实战:Container 端口映射
启动 container# docker run -d -p 80:80 centos:httpd /bin/bash -c /usr/local/bin/start.shcf183879c15bd06523ecb6b5e19aec561d679fa5f3bd1842cb2d2994f0d79b04注: -p 物理机的 80 端口:容器实例的 80 端口 ,把容器中的 80 端口映射到物理机上的 80 端口另一种启动方式# cd /docker-build# docker run -d -p 80:80 centos:httpd /bin/bash -c start.sh在物理机上查看容易状态# docker psCONTAINER ID      IMAGE               COMMAND                  CREATED             STATUS            PORTS                NAMEScf183879c15b      centos:httpd      "/bin/bash -c /usr/l…"   24 seconds ago      Up 23 seconds       0.0.0.0:80->80/tcp   happy_mahavira查看物理机上开启的 80 代理端口# netstat -pantu | grep 80tcp6       0      0 :::80                   :::*                  LISTEN      10870/docker-proxyudp6       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      测试
在浏览器输入 http://192.168.10.7
https://www.linuxprobe.com/wp-content/uploads/2020/05/1-48.png总结
以上就是 Docker Image 的发布和 Container 端口映射的操作过程,希望能帮助到大家。
页: [1]
查看完整版本: Docker Image 的发布和 Container 端口映射