Articles of docker compose

如何将Docker容器端口暴露给另一个容器

我有一个docker集装箱,依靠selenium作为链接服务(也是docker集装箱)。 这个docker集装箱只是使用selenium服务作为主机来运行nightwatchJStesting无头。 selenium服务启动正常,但是当夜间testing试图在docker集装箱内运行时,我在selenium服务端口(4444)上收到拒绝的连接错误。 我可以使用curl访问此端口的selenium主机,也可以运行它的夜间testing,如果我不通过docker运行testing。 这里是我的docker撰写yaml文件: services: selenium: image: selenium/standalone-chrome ports: – "4444:4444" nightwatch: build: . volumes: – .:/home/client_test links: – selenium environment: selenium: 4444 expose: – "4444" 和我的docker文件: # #Nightwatch.js Dockerfile # FROM alpine:3.4 WORKDIR /home/client-tests ADD . /home/client-tests/ ENV NODE_PATH=/home/client-app/node_modules #RUN apk add 'firefox-esr<45.6.0-r0' #install firefox #RUN wget -c http://ftp.mozilla.org/pub/firefox/releases/45.8.0esr/firefox-45.8.0esr.linux-x86_64.sdk.tar.bz2 -P /usr/local #RUN tar […]

Docker不会构build节点容器

我正在尝试构build一个包含Node容器的Docker镜像(您可以在这里查看代码 ) 而当我运行一个docker compose up -d ,我受到这个错误的欢迎 Building node Step 1/2 : FROM node:latest ERROR: Service 'node' failed to build: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on [::1]:53: read udp [::1]:57055->[::1]:53: read: connection refused 我使用Hyper-V运行Docker for Windows,诊断ID是EC5B82D9-E059-45C4-A909-C7A062429C98 / 2017-09-20_22-51-57如果您想检查它。 任何人都有想法?

找不到在Docker撰写环境中运行的节点js应用程序的模块

我很抱歉我的新手问题,但我有一个可怕的一天搞清楚这个错误,我有一个快速的应用程序,我试图运行它在docker写作。 我用过这个Dockerfile: FROM mhart/alpine-node RUN mkdir -p /usr/src/app RUN chmod -R 777 /usr/src/app WORKDIR /usr/src/app RUN npm install node-gyp -g RUN npm install nodemon -g ENV NODE_ENV development EXPOSE 3000 和我的docker合成文件的这一部分: backend: mem_limit: 100m build: context: . dockerfile: dockerfiles/node/Dockerfile command: npm start depends_on: – mongo – elasticsearch volumes: – ./backend/:/usr/src/app ports: – 3000:3000 links: – […]

WebStorm Node.js远程debugging是否可以在Docker容器中使用Node.js v8?

使用chrome://inspect我可以访问0.0.0.0:56745来进行debugging, 但是我发现WebStorm的debugging有了更好的体验。 我尝试创build一个像这样的Node.js Remote Debugconfiguration来查看WebStorm是否支持它: 对于js文件中的任何断点没有任何回应。 你能告诉我WebStorm是否支持在最新的2017.2.5版本中debuggingWebStorm内部的Docker节点(不是通过Chrome开发者工具)? 泊坞窗,compose.yml version: '3' services: web: build: context: . dockerfile: docker/DockerfileDev.df image: web:dev ports: – "3000:3000" – "0.0.0.0:56745:56745" expose: – "56745" entrypoint: ["npm", "run","nodemon" ] 的package.json: "scripts": { "nodemon": "./node_modules/nodemon/bin/nodemon.js –inspect=0.0.0.0:56745 –debug-brk index.js" }, DockerfileDev.df FROM node:8 # some other stuff UPDATE 远程debugging器显示它正在连接,但在控制台中没有任何东西,并且不会在断点处暂停:

Docker组合在生产中

尝试使用docker-compose构build一个简单的Node.js应用程序。 虽然我遇到了Django应用程序的相同问题,所以我认为我只是缺less某种重要的步骤。 这是我的Dockerfile: FROM node:4.2.1 CMD mkdir -p /var/app COPY . /var/app EXPOSE 3000 CMD node /var/app/index.js 当我运行docker组成指向一个数字海洋机器时,它会抛出一个节点错误,提示它无法在/ var / app中find代码。 有没有其他的机制,我应该用我的代码到docker以外的机器?

用docker连接nodejs和mongo

这是我的docker-compose-file: version: "2" services: rest-api: build: . ports: – "3007:3007" links: – mongo mongo: image: mongo volumes: – /data/mongodb/db:/data/db ports: – "27017:27017" 这是我的Dockerfile: FROM mhart/alpine-node:latest RUN rm -rf /tmp/node_modules ADD package.json /tmp/package.json RUN cd /tmp && npm install RUN mkdir -p /opt/app && cp -a /tmp/node_modules /opt/app/ WORKDIR /opt/app ADD . /opt/app EXPOSE 3007 CMD […]

Docker撰写图片失败

我正在学习Dockerfiles和docker-compose。 当我手动运行Dockerfiles并创build容器时,他们都应该像使用docker-compose.yml脚本一样触发构build和部署,但是订阅容器停止工作。 成功运行的过程是: docker build -t cu/broker:1.0.0 broker/ docker run -d –name broker -p 6379:6379 cu/broker:1.0.0 docker build -t cu/subscriber:1.0.0 subscriber/ docker run -d –name subscriber –link broker:db cu/subscriber:1.0.0 docker build -t cu/publisher:1.0.0 publisher/ docker run –name publisher –link broker:db -ti cu/publisher:1.0.0 运行这些命令后,我有两个正在运行的容器和一个交互式控制台,我可以将单个发布命令发送到redis服务器。 我没有将每个脚本与文件夹结构一起添加到这个问题中,而是编写了一个shell脚本来重置所有内容并生成正确的结构和文件。 当我触发docker-compose.yml脚本时,它成功完成,但只有代理容器正在运行,另外两个启动后立即终止。 我不明白为什么,甚至与–verbose标志,我没有得到有用的信息,以帮助debugging。 这是我用来运行脚本的命令。 docker-compose –verbose up -d 这里是构build文件夹和文件结构的shell脚本config.sh。 #!/bin/sh # builds […]

docker-compose安装程序不允许容器连接到redis

所以我写了一个节点应用程序,我的docker-compose.yml如下所示: version: '2' services: redis: image: "redis:latest" web: build: . ports: – "3000:3000" volumes: – .:/app links: – redis emailworker: build: . env_file: – ./.env command: node ./lib/workers/email.js volumes: – .:/app links: – redis smsworker: build: . env_file: – ./.env command: node ./lib/workers/sms.js volumes: – .:/app links: – redis 很简单,一个networking服务器,和两个工人来处理电子邮件和短信工作。 一切都很好,直到今天下午,什么都没有改变,但我的应用程序启动时,我不能再连接到redis容器。 我运行docker-compose up并在尝试使用kue节点模块连接到redis时出现以下错误: Error: Redis […]

Docker编写libstdc ++。so.6找不到GLIBCXX_3.4.21

当我在我的节点目录中运行docker-compose up ,我得到了 /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /app/node_modules/bcrypt/lib/binding/bcrypt_lib.node) 但是我肯定有这样的贪婪: strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX_3.4.2 GLIBCXX_3.4.2 GLIBCXX_3.4.20 GLIBCXX_3.4.21 GLIBCXX_3.4.22 我试过了 sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade 按照https://askubuntu.com/questions/164296/glibcxx-3-4-15-not-found,但我得到同样的错误。 我不知道如何解决这个问题,无法在其他地方find解决scheme。 这是在Ubuntu 16.04,如果重要的话。

不能用docker-compose和nodejs打开网站

每一个人。 我有docker-与nodejs组成。 web: … ports: – "3030:3000" …. app.js: … server.listen(8000, function(){ console.log('test'); }); 我们可以看到端口是8000。 我做docker-compose up和terminal有'testing' 但是http:// MY_IP:8000没有“无法访问网站” 我开始用docker-compose run web npm start server started,但是我也得到了这个错误。 如何使用docker-compose启动nodejs? PS:如果我安装npm install WITHOUT docker-compose命令。 我没有这个问题