Tag: dockerfile docker

Docker容器中的多个公共ip地址用于传出连接

希望你能帮我解决我不常见的任务,谢谢你的时间! =) 这是我需要克服的条件: 服务器有1000多个公共IP地址(显然是ipv6 )。 每个docker集装箱必须有1个input地址(它很简单,可以是ipv4 ),250个地址用于输出连接。 重点是每个连接到野外的连接必须从特定的公共src ip地址发起。 基本上每个容器的工作方式就像代理服务器一样多地址。 任何想法如何优雅地与Docker实现? 想从默认的172.17.0.0子网添加250ips到docker,并用iptables绑定到公共地址,看起来很难支持,而且对我来说不稳定。 docker工人有一些function可以帮助我做到这一点更简单吗?

Docker Cloud自动testing找不到服务

我目前正在试图dockerize我的一个Django API项目。 它使用postgres作为数据库。 我使用Docker Cloud作为CI,以便可以构build,皮棉和运行testing。 我从下面的DockerFile开始 # Start with a python 3.6 image FROM python:3.6 ENV PYTHONUNBUFFERED 1 ENV POSTGRES_USER postgres ENV POSTGRES_PASSWORD xxx ENV DB_HOST db RUN mkdir /code ADD . /code/ WORKDIR /code RUN pip install -r requirements.txt RUN pylint **/*.py # First tried running tests from here. RUN python3 src/manage.py test 但是这个DockerFile总是失败,因为在运行unit […]

“docker拉”提示input密码

我有configuration在〜/ .docker / config.json(其中包含身份validation令牌)pathconfig.json文件。 但是当我做docker pull <registry-url>:5000/testrepo/elasticsearch:latest ,会提示input密码。 但我相信它应该能够下载图像而不提示密码,因为我有auth令牌。 有谁能帮我解决这个问题吗? 谢谢,sunil

Docker的Windows – 无法连接到默认的iis网站

我有一个Windows容器运行Microsoft / iis基础映像。 我使用以下方法构build了图像: 命令: docker build -t test-iis-image . 文件: 从微软/ iis EXPOSE 8080' 然后我运行一个容器使用: 命令: docker run -d -p 8080:8080 test-iis-image 我得到了容器的IP地址(例如172.18.167.181) 添加了一条路线: 命令 route /P add 172.0.0.0 MASK 255.0.0.0 10.0.75.1 然后尝试使用以下URL连接到容器: http://172.18.167.181:8080/ 我期待看到默认的IIS网页,但我得到的是: 尝试检索URL时遇到以下错误:> http://172.18.167.181:8080/ 连接到172.18.167.181失败。 系统返回:(110)连接超时 远程主机或networking可能已closures。 请再次尝试请求。 但是,当我ping通的IP地址,似乎find容器: ping 172.18.167.181 用32字节的数据Pinging 172.18.167.181: 来自172.18.167.181的回复:字节= 32时间<1ms TTL = 128 来自172.18.167.181的回复:字节= 32时间<1ms TTL […]

如何使用ES Docker镜像部署由多个主机组成的Elastic Search群集?

我想使用ES Docker镜像部署由不同主机组成的ES群集。 我遇到了这方面的一些材料,并能够在同一个主机上使用docker撰写ES集群。 但是,我不能使用docker撰写来部署由不同主机组成的ES群集。 我使用了以下链接供参考 – https://www.elastic.co/blog/docker-networking https://stefanprodan.com/2016/elasticsearch-cluster-with-docker/ https://discuss.elastic.co /吨/多elasticsearch-搬运工的容器-每一个主机/ 49989 以下是我在每台主机上使用的docker run命令。 ES在每台主机上启动,但主机无法join现有群集,即使我正在使用discovery.zen.ping.unicast.host。 在节点 – 1(与IP – 10.91.104.52),我启动容器与以下命令。 sudo docker run -p 9200:9200 \ – e "network.publish_host = 10.91.104.52" \ – e "cluster.name = mycluster" \ – e "discovery.zen.ping.unicast.hosts = 10.91.104.52,10.91.104.120" \ – e "dicovery.zen.minimum_master_nodes=1" 在节点2上(ip-10.91.104.120) sudo docker run -p 9200:9200 \ – e […]

在docker 1.10之后有没有办法从中间层访问文件?

在docker 1.10之后,如果您从其他位置将其拖出, docker history将不再显示图像的中间层,而不是在本地构build。 这个github问题讨论了这个变化,还提到使用docker save和docker load ,你可以使用中间层作为caching。 这是否意味着,如果一个图像是build立,只是上传到一个存储库(即没有tar文件),有没有办法下载图像的人来恢复中间层? 我特别想知道的是: COPY sensitive_file . RUN do_something_with ./sensitive_file RUN rm ./sensitive_file 是否可以像上面那样编写Dockerfile,并假设(除非docker中有一个未知的漏洞),这个敏感文件将不会被其他人访问? 我知道,还有其他方式来处理凭据或敏感文件,如设置本地服务器和RUN wget file && use file && rm file ,群集docker机密,或使用docker保险库。 我不是在寻找处理敏感文件的不同方法, 而我只是有兴趣,如果上述方法使文件可访问或不。 谢谢!

Docker服务映像path

我想知道docker service命令。 我创build了一个docker群,我有一个经理和三个工人。 安装Prometheus,ELK和Glassfish三项服务: 所有的服务都在运行,这是非常好的,但我想知道我可以如何部署war文件到Glassfish环境。 我在哪里可以find/ autodeploy文件夹? 它不在/usr/local/只是为了说清楚。 我是否需要克隆Dockerhub中的glassfish dockerfile ,创build自己的存储库,然后编写一个COPY CMD来部署文件? 或者甚至有可能在服务上部署? 这可能是一个简单的答案,但我一直在WWW周围冲浪,我没有设法find任何有用的问题。 提前致谢

音量坐骑不适用于数字海洋

小testing案例: 泊坞窗,compose.yml nginx: image: nginx:1 ports: – "80:80" volumes: – ./testconf:/etc/nginx/conf.d – ./testhtml:/usr/share/nginx/html testconf / nginx.conf server { listen 80; server_name _; location / { root /usr/share/nginx/html; try_files $uri $uri/; } } testhtml / index.html的 <!DOCTYPE html> <html> <body> <p>Hello</p> </body> </html> 机器创造: $ docker-machine create –driver digitalocean –digitalocean-access-token xxxx –digitalocean-region "ams3" edgee 推动: $ […]

我如何cachingDocker多阶段构build层中的Maven依赖和插件?

我想将Maven依赖关系caching在我的Docker Multi Stage Build的构build阶段的一层中。 我的Dockerfile如下所示: FROM maven:3-jdk-8 as mvnbuild RUN mkdir -p /opt/workspace WORKDIR /opt/workspace COPY pom.xml . RUN mvn -B -s /usr/share/maven/ref/settings-docker.xml dependency:resolve COPY . . RUN mvn -B -s /usr/share/maven/ref/settings-docker.xml package FROM openjdk:8-jre-alpine … “` 我基于Docker Multi Stage Build博客文章中提供的示例( 也在Github上提供 )基于此Dockerfile。 当我运行构build,而不是看到依赖下载一次的dependency:resolve ,然后由package重用,我看到两个步骤下载的依赖关系。 有没有人得到这个工作? 我在这里做错了什么?

Docker插件:java.io.FileNotFoundException:/ src / main / docker / Dockerfile gradle-docker失败

我试图运行在OSX(MBP) 春季启动示例 ,我得到以下exception(尝试buildDocker任务)。 我确定我已经正确configuration了docker,因为我可以运行命令docker-machine run hello-world并接收正确的输出。 Caused by: java.io.FileNotFoundException: /src/main/docker/Dockerfile (No such file or directory) at se.transmode.gradle.plugins.docker.image.Dockerfile.fromExternalFile(Dockerfile.groovy:45) at se.transmode.gradle.plugins.docker.image.Dockerfile$fromExternalFile.call(Unknown Source) at se.transmode.gradle.plugins.docker.DockerTask.buildDockerfile(DockerTask.groovy:223) at se.transmode.gradle.plugins.docker.DockerTask.build(DockerTask.groovy:238) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63) … 54 more 其他validation是我可以运行gradle-docker默认构build任务(即distDocker)没有任何问题。 当我尝试在gradle脚本上执行构build任务后,发生问题。 // tag::task[] task buildDocker(type: Docker, dependsOn: build) { push = true applicationName = jar.baseName dockerfile = file('/src/main/docker/Dockerfile') doFirst { copy { from jar into […]