diff --git a/.github/workflows/docker-image-ci.yml b/.github/workflows/docker-image-ci.yml index dcbf23c..1f32f4a 100644 --- a/.github/workflows/docker-image-ci.yml +++ b/.github/workflows/docker-image-ci.yml @@ -1,4 +1,4 @@ -name: Docker Image CI +name: Docker Image CI/CD on: push: @@ -25,5 +25,10 @@ jobs: run: echo "${{ secrets.DOCKER_HUB_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_HUB_USERNAME }}" --password-stdin - name: Build and push Docker image run: | - docker-compose build - docker-compose push + docker-compose -f docker-compose.build.yml build + docker-compose -f docker-compose.build.yml push + - name: Deploy to server + run: | + docker-compose pull + docker-compose up -d + EOF diff --git a/Dockerfile b/Dockerfile index 8fdf6a9..c0d5406 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,8 +27,4 @@ COPY --from=builder /app/public /app/public # Instale apenas dependências de produção RUN npm ci --omit=dev -RUN npm prune --production - -EXPOSE 3000 - -CMD ["npm", "start"] +RUN npm prune --production \ No newline at end of file diff --git a/docker-compose-dev.yml b/docker-compose-dev.yml index 2f45ed8..cfbaf5d 100644 --- a/docker-compose-dev.yml +++ b/docker-compose-dev.yml @@ -1,24 +1,24 @@ services: - quality-lab-pro-front-end: - build: - context: . - dockerfile: Dockerfile - ports: - - '3000:3000' - environment: - - NODE_ENV=production - volumes: - - qualitylab_node_modules:/app/node_modules - - qualitylab_public:/app/public - stdin_open: true - tty: true - command: ['npm', 'start'] - networks: - - qualitylab-net + quality-lab-pro-front-end: + build: + context: . + dockerfile: Dockerfile + ports: + - '3000:3000' + environment: + - NODE_ENV=production + volumes: + - qualitylab_node_modules:/app/node_modules + - qualitylab_public:/app/public + stdin_open: true + tty: true + command: ['npm', 'start'] + networks: + - qualitylab-net volumes: - qualitylab_node_modules: - qualitylab_public: + qualitylab_node_modules: + qualitylab_public: networks: - app-network diff --git a/docker-compose.build.yml b/docker-compose.build.yml new file mode 100644 index 0000000..c41d236 --- /dev/null +++ b/docker-compose.build.yml @@ -0,0 +1,6 @@ +services: + quality-lab-pro-front-end: + build: + context: . + dockerfile: Dockerfile + image: leonardomeireles55/quality-lab-pro-front-end:latest diff --git a/docker-compose.yml b/docker-compose.yml index 7f31943..ced3013 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,26 +1,23 @@ services: - quality-lab-pro-front-end: - image: leonardomeireles55/quality-lab-pro-front-end:latest - build: - context: . - dockerfile: Dockerfile - ports: - - '3000' - environment: - - NODE_ENV=production - volumes: - # - qualitylab_node_modules:/app/node_modules - - qualitylab_public:/app/public - stdin_open: true - tty: true - command: ['npm', 'start'] - networks: - - qualitylab-net + quality-lab-pro-front-end: + image: leonardomeireles55/quality-lab-pro-front-end:latest + ports: + - '3000' + environment: + - NODE_ENV=production + volumes: + # - qualitylab_node_modules:/app/node_modules + - qualitylab_public:/app/public + stdin_open: true + tty: true + command: ['npm', 'start'] + networks: + - qualitylab-net volumes: - qualitylab_node_modules: - qualitylab_public: + qualitylab_node_modules: + qualitylab_public: networks: - qualitylab-net: - external: true + qualitylab-net: + external: true