怎样获取docker动态分配的port
一、原由
当在一个集群环境中,我们需要用到docker启动一个服务的时候,如果总是指定固定的公开端口给docker运行的服务,那么将极大的限制了服务部署的灵活性和可维护行。那么有没有办法在服务启动后去容易获得docker动态分配的端口呢?
二、解决办法
Docker提供了port
的子命令,具体使用如下:
docker port <container-name> |cut -d':' -f2
三、后续问题
目前这种方式只适合外服务外做服务注册的场景。
如果服务注册是在服务程序中完成的(如上报到zookeeper等),那么目前是没有办法的。有个issue3778在跟,不知道docker什么时候提供
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能有所帮助,如果有疑问大家可以留言交流。
相关推荐
-
Docker到底是什么?Docker为什么它这么火!
Xcode 是运行在操作系统Mac OS X上的集成开发工具(IDE),由苹果公司开发.Xcode是开发OS X 和 iOS 应用程序的最快捷的方式.Xcode 具有统一的用户界面设计,编码.测试.调试都在一个简单的窗口内完成. 背景介绍 Xcode前身是继承自NeXT的Project Builder. The Xcode suite 包含有GNU Compiler Collection自由软件 (GCC. apple-darwin9-gcc-4.0.1 以及 apple-darwin9-gcc
-
在Docker上开始部署Python应用的教程
几周前, Elastic Beanstalk声明在AWS云中配置和管理Docker容器.在本文中,我们通过一个简单的注册表单页面应用去理解Docker部署过程,该表单使用Elastic Beanstalk Python环境. 关于注册表单应用 几个月之前,我们就已经开发完这个应用并且发表在博客上.有4部分视频和一篇文章"Using DynamoDB and SNS with Elastic Beanstalk in any Supported AWS Region".今天,我们将在这部
-
搭建基于Docker的PHP开发环境的详细教程
现在很多开发者都使用Vagrant来管理他们的虚拟机开发环境,Vagrant确实很酷, 不过也有不少缺点(最主要的是它占用太多的资源).在容器技术.Docker和更多类Docker技术出现后,解决这个问题就变得简单了. 免责声明 由于boot2docker的工作方式,本文所述的方法在你的环境中可能无法正常运行.如果需要在非Linux环境下共享文件夹到Docker容器,还需要注意更多额外的细节.后续我会写篇文章专门来介绍实际遇到的问题. 怎样才算是好的开发环境 首先,我们得知道什么才是好的开发环境
-
MAC下安装docker教程
序 由于云主机很快就要到期了,还是在mac上先搭一下docker环境吧. 安装brew curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1 boot2docker方式(将要废弃) 安装docker sudo brew install boot2docker boot2docker init 启动 boot2docker up 按提示更新环境变量 export
-
利用OpenVSwitch在多台主机上部署Docker的教程
[编者的话]当你在一台主机上成功运行Docker容器后,信心满满地打算将其扩展到多台主机时,却发现前面的尝试只相当于写了个Hello World的入门程序,多主机的网络设置成了下一道门槛.在你尝试各种方案时不妨先看看本文,或许就会豁然开朗,发现原来也不复杂.嗯,是的,本文用到了 OpenVSwitch. 运行Docker已经不是什么新鲜事,网上有很多入门教程来帮助你在一台主机上运行容器.这台主机可以是Linux服务器,也可以是Mac(借助类似boot2docker的项目). 在多台主机上运行却是
-
在windows下的安装Docker的教程
非官方备注:你的CPU一定要支持VT才可以,笔者的笔记本T6400不支持VT是装不上的,所以一定要支持VT,好在笔者的MAC很OK,公司电脑也给力,如果在win7系统安装需要是64的系统. 上一节我们介绍了在ubuntu和centos下的安装,当然都是基于64位系统的,在学习过程中,你可能没有这些东西,当然你可以用virtualbox或者Vmware虚拟化出来,今天我们介绍的是官网给我们提供的using vagrant! 介绍 Docker可以用虚拟主机技术运行在Windows上像virtual
-
在Docker上部署Python的Flask框架的教程
本文中,我将尝试展示用Docker开发python应用(主要是Web应用)的可行方法.虽然我本人专注于Python的Flask微框架,但本文目的是演示如何通过Docker更好地开发和共享应用程序,(由任何语言和框架开发的应用程序).Docker通过封装依赖项,大大减少了开发环境和正式产品的差距. 大多数Python开发人员在开发中使用virtualenv.它提供了一种易用的机制让应用程序使用自己专用的依赖项,这些依赖项可能与在其它应用程序或操作系统存在冲突(尤其是不同的Pyhton版本,还有不同
-
Docker 清理命令集锦
杀死所有正在运行的容器 复制代码 代码如下: docker kill $(docker ps -a -q) 删除所有已经停止的容器 复制代码 代码如下: docker rm $(docker ps -a -q) 删除所有未打 dangling 标签的镜像 复制代码 代码如下: docker rmi $(docker images -q -f dangling=true) 删除所有镜像 复制代码 代码如下: docker rmi $(docker images -q) 为这些命令创建别名 复制代码
-
ubuntu14.04+docker的安装及使用
安装 官方推荐在ubuntu安装,本文选择在ubuntu14.04作为宿主系统. 系统更新 复制代码 代码如下: sudo apt-get update && apt-get upgrade -y sudo reboot #最好重启一下 安装docker 复制代码 代码如下: curl -s https://get.docker.io/ubuntu/ | sudo sh 基础命令 复制代码 代码如下: # 下载一个ubuntu镜像 sudo docker pull ubuntu
-
再Docker中架设完整的WordPress站点全攻略
1. 安装 Docker 在我们真正开始之前,我们需要确保在我们的 Linux 机器上已经安装了 Docker.我们使用的主机是 CentOS 7,因此我们用下面的命令使用 yum 管理器安装 docker. # yum install docker # systemctl restart docker.service 2. 创建 WordPress 的 Dockerfile 我们需要创建用于自动安装 wordpress 以及其前置需求的 Dockerfile.这个 Dockerfile 将用于
随机推荐
- 浅谈Java中Unicode的编码和实现
- 不同浏览器对回车提交表单的处理办法
- 一个jsp+AJAX评论系统第1/2页
- 一个简单计数器的源代码
- 用CSS实现链接的虚线下划线效果
- jquery实现的一个文章自定义分段显示功能
- 跨浏览器的事件对象介绍
- Linux下架FTP
- php.ini中date.timezone设置分析
- java 中动态代理详解及实例
- JAVA Map架构和API介绍
- 学习php设计模式 php实现桥梁模式(bridge)
- C#画笔Pen保存和恢复图形对象的设置方法
- Android 自定义View之倒计时实例代码
- 微信小程序实现添加手机联系人功能示例
- jQuery中复合选择器简单用法示例
- 简述JS浏览器的三种弹窗
- Centos7.3 安装部署Nginx并配置https的方法步骤
- linux下pptp搭建vpn代理上网很慢的解决办法
- 33个Python爬虫项目实战(推荐)