5.网络基础配置
2015-08-28 15:19
441 查看
Docker目前提供了映射容器端口到宿主主机和容器互联机制来为容器提供网络服务
1.从外部访问容器应用
在启动容器的时候,如果不指定对应参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的
当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-p或-P参数来指定端口。
-P:随机映射一个49000-49900的端口至容器内部开放的网络端口
-p:可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器。
格式:ip:hostport:containerport | ip::containerport | hostport:containerport
例:docker run -d -P graining/webapp python app.py
2:映射所有接口地址
映射本地5000端口映射到容器的5000端口
docker run -d -p 5000:5000 training/webapp python app.py
映射到指定地址的指定端口
docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py
映射到指定地址的任意端口
docker run -d -p 127.0.0.1::5000 training/webapp python app.py
3:查看映射端口配置
docker port NAMES
4:容器互联实现容器间通信
自定义容器命名
连接系统依据容器的名称来执行。因此,首先需要自定义一个好记的容器命名
虽然当创建容器的时候,系统默认会分配一个名字,但自定义命名容器有两个好处
自定义的命名,比较好记,比如一个WEB应用容器,我们可以给它起名叫web
当要连接其它容器的时候,可以作为一个有用的参考点,比如连接WEB容器到db容器。
使用--name 标记可以为容器自定义命名
docker run -d -P --name web training/webapp python app.py
注:容器的名称是惟一的。如果已经命名了一个叫web的容器,当再次使用web这个名称的时候,需要先用docker rm来删除之前创建的同名容器。
在执行docker run的时候,如果添加--rm标记,则容器在终止后立刻删除。注意--rm和-d参数不能同时使用。
、
5容器互联
使用--link参数可以让容器之间安全的进行交互
例:
先创建一个新的数据容器db
docker run -d --name db training/postgres
创建一个新的web容器,并将它连接到db容器
docker run -d -P --name web --link db:db training/webapp python app.py
此时,db容器和web容器建立互联关系
--link参数的格式为--link name:alias 其中name是要链接的容器名称,alias是这个连接的别名
1.从外部访问容器应用
在启动容器的时候,如果不指定对应参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的
当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-p或-P参数来指定端口。
-P:随机映射一个49000-49900的端口至容器内部开放的网络端口
-p:可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器。
格式:ip:hostport:containerport | ip::containerport | hostport:containerport
例:docker run -d -P graining/webapp python app.py
2:映射所有接口地址
映射本地5000端口映射到容器的5000端口
docker run -d -p 5000:5000 training/webapp python app.py
映射到指定地址的指定端口
docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py
映射到指定地址的任意端口
docker run -d -p 127.0.0.1::5000 training/webapp python app.py
3:查看映射端口配置
docker port NAMES
4:容器互联实现容器间通信
自定义容器命名
连接系统依据容器的名称来执行。因此,首先需要自定义一个好记的容器命名
虽然当创建容器的时候,系统默认会分配一个名字,但自定义命名容器有两个好处
自定义的命名,比较好记,比如一个WEB应用容器,我们可以给它起名叫web
当要连接其它容器的时候,可以作为一个有用的参考点,比如连接WEB容器到db容器。
使用--name 标记可以为容器自定义命名
docker run -d -P --name web training/webapp python app.py
注:容器的名称是惟一的。如果已经命名了一个叫web的容器,当再次使用web这个名称的时候,需要先用docker rm来删除之前创建的同名容器。
在执行docker run的时候,如果添加--rm标记,则容器在终止后立刻删除。注意--rm和-d参数不能同时使用。
、
5容器互联
使用--link参数可以让容器之间安全的进行交互
例:
先创建一个新的数据容器db
docker run -d --name db training/postgres
创建一个新的web容器,并将它连接到db容器
docker run -d -P --name web --link db:db training/webapp python app.py
此时,db容器和web容器建立互联关系
--link参数的格式为--link name:alias 其中name是要链接的容器名称,alias是这个连接的别名
相关文章推荐
- Tcp packet Receive and reOrder
- Windows单机最大TCP连接数的问题
- android 学习笔记 HttpURLConnection
- 计算机网络A、B、C、D、E类地址总结
- 使用HttpClient发送请求、接收响应
- 利用Git和TortoiseGit把代码传输到网络服务器
- 中文CentOS 6.5网络配置及设置IP地址的详细分析
- android tcp/ip server接多个client
- CentOS 6.0图解网络安装全过程
- 计算机网络常用英文单词
- iOS开发网络篇—GET请求和POST请求 iOS开发网络篇—GET请求和POST请求
- ASP.NET访问网络驱动器(映射磁盘)
- Http调试工具-Fiddler使用指引
- 网络处理2-异步POST请求和同步请求
- Android_开源框架_AndroidUniversalImageLoader网络图片加载
- PHP初学-http简述
- C# 文件读取和写入(UNC(网络共享)/本地文件/url文件)
- iOS网络开发——JSON数据解码(使用NSJSONSerialization)
- Web开发中关于servlet产生HTTP Status 404 - /webMVC/servlet/MyReturnMessage.jsp的处理
- C# HttpWebRequest采集时出现操作操时