Tag: docker compose

用户主目录需要在Docker中成为音量

我试图让一个用户主目录在docker中持久化。 这是数据库用户主目录/ home / db2inst1。 我需要在/ home / db2inst1目录中创build的文件以及数据库数据(我已经知道如何执行)保持持久性。 我正在运行的是弄清楚如何获取已经在映像文件中的/ home / db2inst1目录(并在db2安装过程中创build),我想挂载它? 我唯一能想到的其他事情就是创build容器,将主目录内容从容器中复制到主机上,然后用这些文件创build一个新目录,并将用户主目录映射到该位置?

复制数据库postgres contenaire docker

我有一个docker容器,其中包含一个postgres数据库运行,我想在另一台服务器上创build这个数据库的复制是否有可能这样做,如果是的话如何指定与其他服务器上的ip的maste 谢谢

使用Docker云进行Spring引导自动化构build

我正试图通过Docker Cloud实现持续集成/交付。 在Docker Cloud上,我连接了我的桶存储库,所以每一次提交docker build都将在Docker Cloud上启动,但是自动化构build失败,这些是日志 错误:生成失败:添加失败:stat /var/lib/docker/tmp/docker-builder406751627/target/springtest.jar:没有这样的文件或目录错误:生成失败,退出代码2错误:内置“主”(094341b2 )在0:02:10失败 这是我的Docker文件 FROM java:8 VOLUME /tmp ADD /target/springtest.jar springtest.jar ENTRYPOINT ["java","-jar","springtest.jar"] 但是,如果我尝试在我的本地dockerterminal上构build相同的东西,我没有得到问题,我使用这个命令mvn package docker:build和它的创build图像成功 那么为什么使用相同的Dockerfile自动构build呢? 任何其他步骤我需要做的?

重新安装后,得到“localhostredirect你太多次”的错误

我从端口8080上的dockerfile创build了一个docker容器,我可以通过localhost:8080访问它。 然后,我停下来,使用container stop mycontainer和container rm mycontainer删除容器。 然后我删除了相应的图像。 然后,我从本地机器上的另一个目录重新安装了Docker容器。 一切安装,因为我预期,但我现在得到这个错误: 本地主机redirect你太多次了。 ERR_TOO_MANY_REDIRECTS 我已经清除了Cookie并浏览了没有帮助的数据。 从NGINX日志看来,服务器正在发送一个循环的302redirect到它自己。 我使用与第一次创build容器时完全相同的configuration。 我相信被删除的初始构build是否可能干扰我当前的构build? 这是我的nginx.conf: user www-data; worker_processes 2; error_log /var/log/nginx/error.log error; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; log_format main '$remote_addr – $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; server […]

运行在Docker容器中的Requestbin不是持久的

我试图在本地运行requestbin( https://requestb.in )。 开始我从这里拿了代码: https : //github.com/Runscope/requestbin 。 本地部署指令是: $ sudo docker-compose build $ sudo docker-compose up -d 下面是docker-compose.yml的内容: app: build: . environment: REALM: prod REDIS_URL: "//redis:6379" links: – redis ports: – "8000:8000" redis: image: redis 不幸的是,我不能在我使用的服务器上使用docker compose,所以我把上面的代码翻译成两个docker调用: docker run -d –name requestbin_redis redis docker run -d –name requestbin -p 8000:8000 –link requestbin_redis:redis -e REDIS_URL=//redis:6379 […]

docker-compose .env和direnv .envrc

我们已经使用direnv很长一段时间来自动加载特定文件夹中的环境variables。 而从版本3开始, docker -compose似乎支持.env文件 。 .envrc使用的.envrc文件使用export : export NODE_ENV=development docker-compose使用相同的文件似乎不工作,只有没有export我得到的variables的值。 NODE_ENV=development 任何想法如何统一到一个单一的.env或.envrc文件或.envrc的替代?

nginx-proxy:如何在AWS上通过互联网公开代理?

首先感谢您的时间。 我在docker上试着我的手。 当我看到这篇文章 http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/ 请看看我的docker-compose.yml文件,我正在使用下面的图片 jwilder / nginx的代理:最新 grafana / grafana:4.6.2 version: "2" services: proxy: build: ./proxy container_name: proxy restart: always volumes: – /etc/localtime:/etc/localtime:ro – /var/run/docker.sock:/tmp/docker.sock:ro ports: – 80:80 – 443:443 grafana: build: ./grafana container_name: grafana volumes: – grafana-data:/var/lib/grafana environment: VIRTUAL_HOST: grafana.localhost GF_SECURITY_ADMIN_PASSWORD: password depends_on: – proxy volumes: grafana-data: 所以当我做我的本地系统上的docker-compose up -d我docker-compose up -d能够访问grafana容器。 现在我已经在aws上部署了这个docker应用程序如何使用VIRTUAL_HOST访问ec2上的grafana容器 […]

Docker给自己创build的挂载点赋予奇怪的权限

我正在使用ACL来确保从主机到卷的写访问权限。 我有一个docker-compose.yml ,例如MySQL和MongoDB在Docker卷中有数据目录。 这些卷的背后并不相关。 它甚至发生空的未使用的容器文件夹。 如果卷对的本地文件夹不存在,Docker会创build它并设置一些奇怪的权限。 如果该文件夹已经在那里,权限是正常的如预期。 在项目的根目录中,我设置了ACL: sudo setfacl -R -mu:mri:rwX . sudo setfacl -dR -mu:mri:rwX . 例如docker-compose.yml包含: mongo: image: mongo:3.0 volumes: – ./docker/var/mongo:/data/db 当我启动容器和Docker创buildmongo目录时,它崩溃的权限,我得到这个: $ getfacl docker/var/mongo # file: docker/var/mongo # owner: 999 # group: root user::rwx user:mri:rwx #effective:rx group::rwx #effective:rx mask::rx other::rx default:user::rwx default:user:mri:rwx default:group::rwx default:mask::rwx default:other::rx 在这一点上,我没有写访问了。 如果之前存在文件夹,则不会发生这种情况。 如果我再次运行setfacl命令,我再次访问。 但在我的自动化工作stream程中,这是不可能的,它不会是一个真正的解决scheme。 为什么会发生这种情况,以及如何让Docker在不改变权限的情况下创build这个文件夹?

Dockernized Nginx +(Rails + Unicorn)+ Redis + PostgreSQL:connect()失败(111:连接被拒绝)

我试图运行4容器(Nginx +(Rails的+独angular兽)+ Redis的+ PostgreSQL的),但它不工作。我检查了我的Dockerfile和Nginx.conf无法解决Nginx的连接拒绝的问题(404没有find浏览器)。 [error] 8#8: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.99.1, server: localhost, request: "GET / HTTP/1.1", upstream: "http://172.17.0.95:3000/", host: "192.168.99.100:8080" 我的Dockerfile FROM ruby:2.1.5 RUN apt-get update && apt-get install -y nodejs mysql-client –no-install-recommends && rm -rf /var/lib/apt/lists/* RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY Gemfile /usr/src/app/ COPY […]

如何从前端js请求链接的容器?

我使用docker-compose构build应用程序。 一个docker集装箱是一个唯一的轨道API应用程序。 其次是有angular度的node.js应用程序。 我需要的是向轨道容器发出POST和GET请求,以便从它获取数据到我的Angular应用程序。 泊坞窗,compose.yml rails_server: build: ./rails_server nodejs_server: build: ./nodejs_server ports: – "80:8080" links: – rails_server 我试图使用docker为我提供的ENVvariables来访问rails容器。 像MICROSERVICEAPP_RAILS_SERVER_1_PORT_3000_TCP_ADDR , MICROSERVICEAPP_RAILS_SERVER_1_PORT_3000_TCP_PORT 。 有envvariables相应地返回172.17.0.2和3000 。 但重点是浏览器客户端无法访问内部的docker专用networking。 所以我无法向我的Rails应用程序发出请求。 我想我可以发送请求回到节点js,然后到轨道,但感觉不对。 我应该如何解决这个问题?