簡體   English   中英

docker-compose啟動兩個節點應用

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM