Docker网络功能

134 阅读1分钟

外部访问容器

容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过-P或-p参数来指定端口映射 当使用-P标记时,Docker会随机映射一个端口到内部容器开放的网络端口,具体映射到的端口可以使用docker ps查看

sudo docker run -d -p 5000:5000 training/webapp python app.py

映射到指定地址的端口

sudo docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py

映射到指定地址的任意端口

sudo docker run -d -p 127.0.0.1::5000 training/webapp python app.py

查看端口

sudo docker port

容器互联

容器的连接是除了端口映射外,另一种跟容器中应用交互的方式,该系统会在源和接收容器之间创建一个隧道,接收容器可以看到源容器指定的信息

容器命名

连接系统根据容器的名称来执行,自定义容器名称就非常重要

sudo docker run -d -P --name web training/webapp python app.py

容器名称不能重复

容器互联

创建一个数据库容器

sudo docker run -d --name training/postgres

web容器连接到db容器

sudo docker run -d -P --name web --link db:db training/webapp python app.py

其中db是要链接的容器名称,后一个db是这个连接的别名。