[英]docker-compose start two node apps
我有这样的结构:
├── api
│ ├── server.js
│ ├── Dockerfile
├── docker-compose.yml
└── web
├── client
├── Dockerfile
├── node_modules
├── package.json
└── server
根目录中有2个Dockerfile和一个docker compose文件,如何使用docker compose运行两个应用程序?
我这样尝试过:
撰写文件:
services:
web:
build: ./web .
volumes:
- .:/app
ports:
- "4200:4200"
restart: always
command: npm start
server:
build ./api .
volumes:
- .:/app
ports:
- "3100:3100"
restart: always
environment:
- NODE_ENV=production
command: npm start
api docker文件示例:
FROM node:6.9.4
# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
RUN npm install nodemon -g
# Install app dependencies
COPY package.json /usr/src/app/
RUN npm install
# Bundle app source
COPY . /usr/src/app
EXPOSE 3100
但是这部build: ./web .
出错: build: ./web .
有什么解决办法吗?
您的构建线上还有一个额外的点。 句点通常是用于指示上下文的当前目录,但是您只需将其更改为目录,而不添加额外的部分。 服务器行上也存在间距问题,yaml文件对空格敏感。 最后,请确保包括版本行:
version: '2'
services:
web:
build: ./web
volumes:
- .:/app
ports:
- "4200:4200"
restart: always
command: npm start
server:
build ./api
volumes:
- .:/app
ports:
- "3100:3100"
restart: always
environment:
- NODE_ENV=production
command: npm start
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.