MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come eseguire più applicazioni con un singolo mongodb usando la finestra mobile

Approccio#1 Correggi semplicemente il tuo Dockerfile

Il percorso deve essere sostituito prima con il percorso della cartella

correggilo con

Ma questa sembra una pratica sbagliata. Segui i passaggi seguenti per creare le immagini docker e distribuirle con docker-compose.yml proprio come l'immagine mongo devi creare la tua immagine ed eseguirle con compose.

Approccio#2 Buona pratica per distribuire le app

Immagine Docker App1

  1. Vai alla cartella App1 e crea un Dockerfile

    File Docker

    FROM node:8.9.1
    WORKDIR ./app1/
    COPY ./package.json ./app1/
    RUN npm install
    CMD npm start
    COPY ./app1/ ./app1/
    EXPOSE 8081
    
  2. Crea immagini Docker con

Immagine Docker App2

  1. Vai alla cartella App2 e crea un Dockerfile

    File Docker

    FROM node:8.9.1
    WORKDIR ./app2/
    COPY ./package.json ./app2/
    RUN npm install
    CMD npm start
    COPY ./app2/ ./app2/
    EXPOSE 8081
    
  2. Crea immagini Docker con

Distribuisci immagine con componi

  1. Crea docker-compose.yml nella cartella Dev

    docker-compose.yml

    version: '2'
    services:
       app1:
         image: app1Image
         ports:
           - 8082:8082
         links:
           - mongo
         depends_on:
           - mongo
       app2:
         image: app2Image
         ports:
           - 8081:8081
         links:
           - mongo
         depends_on:
           - mongo
       mongo:
         image: mongo:3.4.10
         ports:
           - 27017:27017
         volumes:
           - './dev/data/db:/data/db'
         links:
           - mongo
         depends_on:
           - mongo
    
  2. ESEGUI l'app con la composizione mobile

    docker-componi -d