docker学习记录(八)-容器连接

1、端口映射


1.1、创建python应用容器


[dkuser@c741 ~]$ docker run -d -P training/webapp python app.py



[dkuser@c741 ~]$ docker ps 


CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES


01cf9224f4e0        training/webapp     "python app.py"     7 seconds ago       Up 6 seconds        0.0.0.0:32769->5000/tcp   upbeat_albattani



1.2、使用 -p 标识来指定容器端口绑定到主机端口


[dkuser@c741 ~]$ docker run -d -p 5000:5000 training/webapp python app.py


指定端口两种方式的区别是:


-P :是容器内部端口随机映射到主机的高端口


-p : 是容器内部端口绑定到指定的主机端口



CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS                     NAMES


32228f38aeae        training/webapp     "python app.py"     7 seconds ago        Up 6 seconds        0.0.0.0:5000->5000/tcp    amazing_austin



1.3、指定容器绑定网络地址


[dkuser@c741 ~]$ docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py



[dkuser@c741 ~]$ docker ps 


CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                      NAMES


f5343791545c        training/webapp     "python app.py"     21 seconds ago      Up 20 seconds       127.0.0.1:5001->5000/tcp   affectionate_margulis



可以通过访问 127.0.0.1:5001 来访问容器的 5000 端口


[dkuser@c741 ~]$ curl http://127.0.0.1:5001


Hello world!



1.4、绑定udp端口


[dkuser@c741 ~]$ docker run -d -p 127.0.0.1:5000:5000/udp training/webapp python app.py



查看端口绑定信息


[dkuser@c741 ~]$ docker port f5343791545c 5000


127.0.0.1:5001



2、容器连接


端口映射并不是唯一把 docker 连接到另一个容器的方法。


docker 有一个连接系统允许将多个容器连接在一起,共享连接信息。


docker 连接会创建一个父子关系,其中父容器可以看到子容器的信息。



可以使用 --name 标识来命名容器


[dkuser@c741 ~]$ docker run -d -P --name testweb training/webapp python app.py



[dkuser@c741 ~]$ docker ps -l


CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                     NAMES



ed95b6edc8c1        training/webapp     "python app.py"     16 seconds ago      Up 15 seconds       0.0.0.0:32770->5000/tcp   testweb



参考:



https://www.runoob.com/docker/docker-tutorial.html


猜你喜欢

转载自blog.51cto.com/xiaoxiaozhou/2385364