개발 진행중에는 stage, dev, live 등 여러 환경별로 배포 진행이 이루어 진다
CI/CD 에는 환경 옵션이 존재하고 환경 옵션 설정으로 환경별 배포 이력을 확인 할수 있다
image: node:18
cache:
key: $CI_COMMIT_REF_SLUG
paths:
- node_modules/
stages:
- build
- test
- deploy staging
- deploy production
- production tests
build website:
stage: build
before_script:
- corepack enable
- pnpm install
script:
- echo $CI_COMMIT_SHORT_SHA
- pnpm docs:build
- sed -i "s/TJ-project/$CI_COMMIT_SHORT_SHA/g" ./.vitepress/dist/index.html
artifacts:
paths:
- ./.vitepress/dist
except:
- schedules
test website:
stage: test
before_script:
- corepack enable
- pnpm install
script:
- pnpm docs:build
- pnpm docs:preview &
- sleep 3
- curl "http://localhost:4173/" | grep -q "A VitePress Site"
except:
- schedules
deploy to stage:
stage: deploy staging
cache: {}
environment:
#이름과 url 을 입력한다
name: staging
url: http://aggressive-language.surge.sh
before_script:
- corepack enable
- SHELL="$(which bash)" pnpm setup
- source /root/.bashrc
- pnpm add -g surge
script:
- surge --project ./.vitepress/dist --domain aggressive-language.surge.sh
except:
- schedules
deploy to production:
stage: deploy production
cache: {}
environment:
#이름과 url 을 입력한다
name: production
url: http://medical-manager.surge.sh
before_script:
- corepack enable
- SHELL="$(which bash)" pnpm setup
- source /root/.bashrc
- pnpm add -g surge
script:
- surge --project ./.vitepress/dist --domain medical-manager.surge.sh
except:
- schedules
production tests:
stage: production tests
image: alpine
cache: {}
script:
- curl -s "http://medical-manager.surge.sh" | grep -q "VitePress"
deploy to stage 와 deploy to production 을 확인하면 environment 옵션이 있고 name 과 url 을 입력할수 있습니다.
저 옵션을 설정하더라도 실제 배포에는 아무런 영향이 없습니다.
옵션 설정후 배포를 한 차례 진행해봅니다.
그 다음 깃랩 메뉴 Operate > Environments 메뉴로 들어가 보면
위와 같은 형태로 환경별 배포 내역을 확인할 수있습니다.
잦은 배포등의 히스토리 추적에 용이합니다.
'코드 > CI-CD-Docker' 카테고리의 다른 글
[Docker] 중지된 컨테이너 자동 제거 하기 (0) | 2024.07.10 |
---|---|
[Docker] 도커 이미지/컨테이너 삭제 (0) | 2024.07.09 |
[Docker] 인터렉티브 모드 (0) | 2024.05.30 |
[docker] attach, detached (0) | 2024.05.13 |
[docker] docker run -p (0) | 2024.05.09 |