Tag: 坞员

Docker群集节点在重启后没有显示出来

我创build了一个本地Swarm集群。 创build时,群集工作正常,当我运行docker info所有节点在“节点”列表中都可见。 重启之后,看起来只有一个工作节点已经join了集群。 所有的节点都报告它们都是同一个集群的成员。 如图所示。 所有节点的SWARM列中都有“swarm-master”。 但是在docker info ,只有主站和节点03可见 是否有任何特定的步骤,我需要完成重新启动后执行。 Docker-machine报告,重新启动时节点已经被分配了新的IP地址,所以我想这可能是一个问题(?)

使用docker-py(OSX)连接到docker-machine

在OSX上,我正在创build一个docker-machine,如下所示: docker-machine create –driver=virtualbox –tls-san dockerhost docker 并添加到/etc/hosts (我也试过了): 192.168.99.100 dockerhost 然后使用docker-py连接到docker-machine: machine_name = 'docker' machine_ip = '192.168.99.100' #from docker-machine env docker CERTS = os.path.join(os.path.expanduser('~'), '.docker', 'machine', 'machines', machine_name) tls_config = docker.tls.TLSConfig( client_cert=(os.path.join(CERTS, 'cert.pem'), os.path.join(CERTS,'key.pem')), ca_cert=os.path.join(CERTS, 'ca.pem'), verify=True ) cli = docker.Client(base_url='https://' + machine_ip + ':2376' , tls=tls_config) 这给出了错误: requests.exceptions.HTTPError: 404 Client Error: Not Found […]

工具来自动化Docker Swarm

我遵循Docker Docs关于在Virtualbox上设置Swarm的问题。 我想这是在AWS,Azure或DigitalOcean上设置它的相同过程。 每次手动做很多事情。 有没有一个工具来自动化呢? 我想用一些东西来设置和扩展Swarm,像Compose对Docker所做的那样。 也许我会从一个AWS实例和2-3个容器开始,然后将它们扩展到100个容器,然后相应地扩展实例。 然后我想缩减到2个实例,其余的将closures。 有这样的事情吗?

从docker集装箱访问主机DNS

/我在Mac上使用Dockertesting版在service-a/docker-compose.yml设置了一些服务: version: '2' services: service-a: # … ports: – '4000:80' 然后,我在/etc/hosts设置了以下内容: ::1 service-a.here 127.0.0.1 service-a.here 我有一个运行该代理服务器的nginx服务器到localhost:4000 。 所以在我的Mac上,我可以运行: curl http://service-a.here 。 这一切都很好。 现在,我正在构build另一个服务service-b/docker-compose.yml : version: '2' services: service-b: # … ports: – '4001:80' environment: SERVICE_A_URL: service-a.here service-b需要一些service-a : 它需要将浏览器中的用户redirect到$SERVICE_A_URL 它需要使用$SERVICE_A_URL执行对service-a HTTP请求 有了这个设置,只有redirect(1.)有效。 HTTP请求(2.)不起作用,因为service-b容器在它的DNS中没有service-a.here概念。 我尝试使用add_hostsconfigurationvariables来添加service-a.here ,但是我并不是add_hosts它设置为什么。 localhost当然不会工作。 请注意,我真的想保持docker-compose文件分开(join他们不会解决我的问题的方式),因为他们已经有很多服务运行在他们的内部。 有没有一种方法可以在Docker容器内访问本地主机上的DNSparsing,以便例如curl service-a.here将从容器内部工作?

Docker Compose – 使用与容器相同的path装载2个卷

这是我的docker-composeconfiguration文件 { "version": "2", "services": { "data1": { "image": "myimage:v1", "volumes": ["/agents"] }, "data2": { "image": "myimage:v2", "volumes": ["/agents"] }, "app": { "image": "app:latest", "volumes_from": ["data1", "data2"] } } } 由于“data1”和“data2”服务的音量都在path“/ agents”中,所以我的“app”容器将包含其中的一个。 有没有一种方法来指定我安装的每个卷不同的path?

如何在Dockerfile中获取主机上的组的GID

我正在build造一个docker服务器的图像,将服务于詹姆斯的奴隶。 该图像需要Java和SSHD。 目前我有一个docker集装箱,可以作为jenkins奴隶。 我的奴隶里面的用户是我在dockerfile里创build的用户jenkins。 FROM java:8-jdk ENV JENKINS_HOME /var/jenkins_home ARG user=jenkins ARG group=jenkins ARG uid=999 ARG gid=999 RUN groupadd -g ${gid} ${group} \ && useradd -d "$JENKINS_HOME" -u ${uid} -g ${gid} -m -s /bin/bash ${user} VOLUME /var/jenkins_home WORKDIR /var/jenkins_home 现在我想让我的jenkins奴隶能够build立docker图像。 所以我的jenkins需要运行的每个docker命令都会在这个slave上执行。 为此,我不得不把我的dockersockets装到我的奴隶容器上。 我用docker-compose启动我的slave-container。 在这里,你看我如何开始我的奴隶: jenkins-slave: build: ./slave image: jenkins-slave:1.0 container_name: jenkins-slave volumes: – slave-volume:/var/jenkins_home – […]

docker机:getsockopt没有路由到主机

我在Windows 2012服务器上设置了Nexus 3.0.2 OSSdocker专用registry,如下所示, docker_repository 有一个Docker机器(版本0.8.0)通过Docker工具(v1.12.0)为Windows(Windows 8.1)安装在VirtualBox上。 我在config.json文件中将库连接器url添加到insecureRegistry以允许不安全的连接。 尝试loginNexus Dockerregistry时,它始终返回“无路由到主机”错误。 但是如果使用curl来testing连接器,它会得到响应。 有人能告诉我如何解决它,因为我是docker的新手? docker_registry

docker不重新启动和build设

我停止使用我的芹菜 docker-compose stop celery 但是当我尝试再次启动并检查ps不重新启动 docker-compose ps radar_celery_1 celery worker -l info -A r … Exit 1 radar_data_1 true Restarting radar_nginx_1 /usr/sbin/nginx Up 0.0.0.0:80->80/tcp radar_postgres_1 /docker-entrypoint.sh postgres Up 5432/tcp radar_rabbitmq_1 docker-entrypoint.sh rabbi … Up 25672/tcp, 4369/tcp, 5671/tcp, 5672/tcp radar_radar_1 bash -c /usr/local/bin/gun … Up 0.0.0.0:8002->8000/tcp radar_redis_1 docker-entrypoint.sh redis … Up 6379/tcp 当我尝试再次构build它时,有一个消息错误 docker-compose up Attaching […]

docker群体服务如何在重新启动策略中指定延迟时间?

我创build了一个docker swarm服务,如果其中一个容器在一个服务中停止,它将立即调度docker容器到一个可用的swarm节点,我想使用docker API将这个调度延迟5秒钟。 在API版本1.26文档那里是指定这样的东西 "RestartPolicy": { "Condition": "on-failure", "Delay": 10000000000, "MaxAttempts": 10 }什么是(Dealy:10000000000)。 是毫秒还是纳秒?

我可以在docker UCP的443端口上运行服务吗?

我想在端口号443上运行一个spring-boot microservice。我使用docker命令创build了这个服务 docker service create -p 443:8443 somerepo/someorg/some-service:v0.1 当我开火这个命令服务正常,但DTR和UCP下去。 我没有一个完整的想法,但只知道docker的UCP控制器443上运行。我的问题是 我可以在端口443上运行我的微服务作为docker服务吗? 可以将Docker UCP控制器的端口号更改为另一个端口。 提前致谢。