Browse Source

👷 Add docker CI

👷 Add docker CI
pull/3/head
Anthony Quéré 5 years ago
committed by GitHub
parent
commit
ccdcbe8357
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 39
      .circleci/config.yml
  2. 18
      Dockerfile

39
.circleci/config.yml

@ -7,6 +7,11 @@ globals:
postgres: &postgres circleci/postgres:9.6.5
caches:
dependencies: &dependencies dependencies-{{ checksum "package.json" }}
docker_hub:
user-id: &dockerhub-user-id anthonyjhoiro
password: &dockerhub-password $DOCKERHUB_PASSWORD
image: &dockerhub-image devops-tpfinal
# --- Commands --- #
@ -25,6 +30,9 @@ jobs:
build: &shared-config
docker:
- image: *node
auth:
username: *dockerhub-user-id
password: *dockerhub-password
working_directory: ~/app
steps:
- checkout
@ -72,6 +80,28 @@ jobs:
name: Lint files
command: yarn lint
docker-build:
<<: *shared-config
environment:
DOCKER_HUB_PWD: *dockerhub-password
DOCKER_HUB_USER_ID: *dockerhub-user-id
DOCKER_HUB_IMAGE: *dockerhub-image
steps:
- checkout
- setup_remote_docker:
version: 20.10.7
- run:
name: Build docker image
command: docker build -t app .
- deploy:
name: Publish image to Docker Hub
command: |
echo $DOCKERHUB_PASSWORD | docker login -u $DOCKER_HUB_USER_ID --password-stdin
docker tag app $DOCKER_HUB_USER_ID/$DOCKER_HUB_IMAGE:$CIRCLE_BUILD_NUM
docker tag app $DOCKER_HUB_USER_ID/$DOCKER_HUB_IMAGE:latest
docker push $DOCKER_HUB_USER_ID/$DOCKER_HUB_IMAGE:$CIRCLE_BUILD_NUM
docker push $DOCKER_HUB_USER_ID/$DOCKER_HUB_IMAGE:latest
# --- Workflow definition --- #
workflows:
@ -88,3 +118,12 @@ workflows:
- lint:
requires:
- build
- docker-build:
requires:
- test
- test-e2e
- lint
filters:
branches:
only:
- main

18
Dockerfile

@ -0,0 +1,18 @@
FROM node:lts as builder
WORKDIR /build
COPY . .
RUN yarn install
RUN yarn build
FROM node:lts
WORKDIR /app
COPY --from=builder /build/dist /app/dist
COPY --from=builder /build/package.json /app/package.json
RUN yarn install --prod
CMD ["yarn", "start:prod"]
Loading…
Cancel
Save