Articles of docker compose

如何将VS代码附加到在泊坞窗容器中运行的节点进程

我试图将Visual Studio代码debugging器附加到在Docker容器内运行的node.js应用程序。 我开始像这样的应用程序: node –debug-brk app.js 我在docker-compose.yml公开debugging器端口: app: build: . working_dir: /code volumes: – .:/code command: npm run debug ports: – "3004:3000" – "5858:5858" 我的launch.json如下所示: { "version": "0.1.0", "configurations": [ { "name": "Attach", "type": "node", "address": "localhost", "port": 5858 } ] } 现在,当我启动应用程序并附加debugging器,这将正确连接(我可以看到在debugging器用户界面中闪烁的值),但它会停止,告诉我以下内容: Error opening 'app.js' (File not found: /code/app.js). 这是因为docker-compose.yml不会在root中挂载应用程序,而是在/code (请参阅docker-compose.yml volumes ),VS代码被突然偏移所困扰。 当我运行应用程序之外的容器(即本地,没有偏移量),它的工作方式和预期的一样,我可以按照预期使用debugging器。 […]

NodeJS + Mysql与Docker组合2

我正在尝试构build一个docker-compose文件来在本地部署连接到mysql服务器的NodeJS应用程序。 我已经尝试了一切(阅读了很多教程和一些问题在这里在Stackoverflow),但我不断收到ECONNREFUSED错误。 这是来自NodeJS的Dockerfile: ##Nodejs FROM node:latest RUN useradd –user-group –create-home –shell /bin/false app ENV HOME=/home/app COPY package.json npm-shrinkwrap.json $HOME/playerground/ RUN chown -R app:app $HOME/* USER app WORKDIR $HOME/playerground RUN npm cache clean && npm install –silent –progress=false USER root COPY . $HOME/playerground RUN chown -R app:app $HOME/* USER app 这是我的Mysql Dockerfile: FROM mysql:latest ENV MYSQL_ROOT_PASSWORD […]

nginx代理多个节点的应用程序泊坞窗

我正在尝试nginx反向代理多个容器。 我有2个容器,有节点添加一个听8085和其他8086我希望他们访问 node.app1.com node.app2.com 所以我用jwilder / nginx代理:最新将坐在这两个容器的来源,将作为反向代理。 所以这里是我的compose.yml文件。 泊坞窗,compose.yml version: "3" services: node-proxy: build: ./node-proxy container_name : node-proxy restart : always volumes: – /var/run/docker.sock:/tmp/docker.sock:ro ports: – 80:80 – 443:443 node-app1: build: ./app1 container_name : node-app1 restart: always environment: VIRTUAL_HOST: node.app1.com depends_on: – node-proxy node-app2: build: ./app2 container_name : node-app2 restart: always environment: VIRTUAL_HOST: node.app2.com depends_on: […]

docker-compose在node_modules上的卷,但是是空的

我很新的Docker,我想映射我的计算机上的node_modules文件夹(用于debugging目的)。 这是我的docker-compose.yml web: build: . ports: – "3000:3000" links: – db environment: PORT: 3000 volumes: – .:/usr/src/app – /usr/src/app/node_modules db: image: mongo:3.3 ports: – "27017:27017" command: "–smallfiles –logpath=/dev/null" 我与Mac的Docker。 当我运行docker-compose up -d都一切正常,但是它在我的电脑上创build了一个node_modules文件夹,但是它是空的。 我进入我的容器的bash和ls node_modules,所有的包在那里。 我怎样才能得到我的电脑上的容器上的内容呢? 谢谢

Docker撰写:NodeJS + MongoDB

我不能让我的docker工作。 这是我的dockerfile: FROM node:0.12 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev RUN mkdir /myapp WORKDIR /myapp ADD . /myapp RUN npm install 我的docker-compose.yml db: image: mongo ports: – 27017 web: build: . command: npm start volumes: – .:/myapp ports: – 3000:3000 links: – db environment: PORT: 3000 在server.js中: var MONGO_DB; var DOCKER_DB […]