Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

11 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

์Šคํ”„๋ง๋ถ€ํŠธ ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

test github action

๊ธฐ์ˆ  ์Šคํƒ

  • ๋ฐฑ์—”๋“œ: Spring Boot
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: MySQL
  • ORM: MyBatis
  • View: Jsp
  • ์ธํ”„๋ผ:
    • Docker & Docker Compose
    • Nginx (๋ฌด์ค‘๋‹จ ๋ฐฐํฌ)
  • ๋ฐฐํฌ ๋ฐฉ์‹: ๋ธ”๋ฃจ/๊ทธ๋ฆฐ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ!!
  • CI/CD: GitHub Actions

๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ๊ตฌ์„ฑ

์ด ํ”„๋กœ์ ํŠธ๋Š” Nginx์™€ ๋ธ”๋ฃจ/๊ทธ๋ฆฐ ๋ฐฐํฌ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ์„ฑ ์š”์†Œ

  • Nginx: ํŠธ๋ž˜ํ”ฝ์„ ๋ธ”๋ฃจ/๊ทธ๋ฆฐ ํ™˜๊ฒฝ์œผ๋กœ ๋ผ์šฐํŒ…
  • Docker Compose: ์ปจํ…Œ์ด๋„ˆ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜
  • GitHub Actions: CI/CD ์ž๋™ํ™”

์‹œ์ž‘ํ•˜๊ธฐ

1. GitHub์—์„œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํฌํฌ ๋ฐ ํด๋ก ํ•˜๊ธฐ

# GitHub์—์„œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํฌํฌ (์›น ์ธํ„ฐํŽ˜์ด์Šค์—์„œ ์ˆ˜ํ–‰)
# ํฌํฌํ•œ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํด๋ก ํ•˜๊ธฐ
git clone https://github.com/your-username/your-repo.git
cd your-repo

# ์›๋ณธ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ upstream์œผ๋กœ ์ถ”๊ฐ€
git remote add upstream https://github.com/original-username/original-repo.git

# ๋ชจ๋“  ๋ธŒ๋žœ์น˜ ํ™•์ธ
git branch -a

# ํ•„์š”ํ•œ ๋ธŒ๋žœ์น˜๋กœ ์ฒดํฌ์•„์›ƒ
git checkout main

AWS EC2์— ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ™˜๊ฒฝ ๊ตฌ์„ฑํ•˜๊ธฐ

1. EC2 ์ธ์Šคํ„ด์Šค์— ์ ‘์†

ssh -i your-key.pem ubuntu@your-ec2-public-ip

2. ๊ธฐ๋ณธ ์„ค์น˜ ๋ฐ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํด๋ก 

# ๊ธฐ๋ณธ ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ
sudo apt-get update
sudo apt-get upgrade -y

# Git ์„ค์น˜
sudo apt-get install -y git

# ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ ๋ฐ ์ด๋™
mkdir -p ~/app
cd ~/app

# ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํด๋ก 
git clone https://github.com/your-username/your-repo.git .

# setup.sh ์Šคํฌ๋ฆฝํŠธ์— ์‹คํ–‰ ๊ถŒํ•œ ๋ถ€์—ฌ
chmod +x setup.sh

3. setup.sh ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰

# ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰
./setup.sh

setup.sh ์Šคํฌ๋ฆฝํŠธ๋Š” ๋‹ค์Œ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค:

  • ์‹œ์Šคํ…œ ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ
  • Git, curl, wget ๋“ฑ ๊ธฐ๋ณธ ๋„๊ตฌ ์„ค์น˜
  • Docker ๋ฐ Docker Compose ์„ค์น˜
  • Docker ๊ถŒํ•œ ์„ค์ •
  • ๋ฐฉํ™”๋ฒฝ ์„ค์ • (SSH, HTTP, HTTPS ํฌํŠธ ์˜คํ”ˆ)
  • ํƒ€์ž„์กด์„ Asia/Seoul๋กœ ์„ค์ •
  • Swap ํŒŒ์ผ ์„ค์ • (2GB)
  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋””๋ ‰ํ† ๋ฆฌ ์ƒ์„ฑ (~/app)

์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ํ›„ ์„œ๋ฒ„๋ฅผ ์žฌ๋ถ€ํŒ…ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค:

sudo reboot

4. ์žฌ๋ถ€ํŒ… ํ›„ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ™˜๊ฒฝ ์ดˆ๊ธฐ ์„ค์ •

# EC2 ์ธ์Šคํ„ด์Šค์— ๋‹ค์‹œ ์ ‘์†
ssh -i your-key.pem ubuntu@your-ec2-public-ip

# app ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™
cd ~/app

# ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ๊ถŒํ•œ ๋ถ€์—ฌ
chmod +x scripts/make-executable.sh
bash scripts/make-executable.sh

# ์ดˆ๊ธฐ ๋ฐฐํฌ ํ™˜๊ฒฝ ์„ค์ •
bash scripts/init-deploy.sh YOUR_DOCKER_HUB_USERNAME

์ดˆ๊ธฐ ์„ค์ • ํ›„ ๋ธ”๋ฃจ ํ™˜๊ฒฝ์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.

5. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™•์ธ

์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ http://your-ec2-public-ip๋กœ ์ ‘์†ํ•˜์—ฌ ์Šคํ”„๋ง๋ถ€ํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™•์ธ

๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค

์ž๋™ ๋ฐฐํฌ

  1. ์ฝ”๋“œ๋ฅผ main/master ๋ธŒ๋žœ์น˜์— ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค.
  2. GitHub Actions๊ฐ€ ์ž๋™์œผ๋กœ CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค:
    • ์ฝ”๋“œ ๋นŒ๋“œ ๋ฐ ํ…Œ์ŠคํŠธ
    • Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ ๋ฐ Docker Hub์— ํ‘ธ์‹œ
    • ํ˜„์žฌ ๋น„ํ™œ์„ฑ ํ™˜๊ฒฝ(๋ธ”๋ฃจ ๋˜๋Š” ๊ทธ๋ฆฐ)์— ์ƒˆ ๋ฒ„์ „ ๋ฐฐํฌ
    • ํ—ฌ์Šค์ฒดํฌ ํ›„ ์„ฑ๊ณต ์‹œ ํŠธ๋ž˜ํ”ฝ ์ „ํ™˜

์ˆ˜๋™ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ

ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ˆ˜๋™์œผ๋กœ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

์˜ต์…˜ 1: ํ†ตํ•ฉ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ (๊ถŒ์žฅ)

# ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ๊ถŒํ•œ ๋ถ€์—ฌ
bash scripts/make-executable.sh

# ๋นŒ๋“œ์™€ ๋ฐฐํฌ๋ฅผ ํ•œ ๋ฒˆ์— ์ง„ํ–‰ (๋ฐฐํฌ ํ™˜๊ฒฝ ์ž๋™ ์„ ํƒ)
bash scripts/manual-deploy.sh YOUR_DOCKER_HUB_USERNAME

# ๋˜๋Š” ํŠน์ • ํ™˜๊ฒฝ์— ๋ฐฐํฌ
bash scripts/manual-deploy.sh YOUR_DOCKER_HUB_USERNAME blue

์ด ์Šคํฌ๋ฆฝํŠธ๋Š” ๋‹ค์Œ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค:

  • Maven์œผ๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋นŒ๋“œ
  • Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ
  • Docker Hub์— ๋กœ๊ทธ์ธ ๋ฐ ์ด๋ฏธ์ง€ ํ‘ธ์‹œ
  • ๋Œ€์ƒ ํ™˜๊ฒฝ์— ๋ฐฐํฌ (ํ˜„์žฌ ํ™œ์„ฑ ํ™˜๊ฒฝ ์ž๋™ ๊ฐ์ง€ ํ›„ ๋ฐ˜๋Œ€ ํ™˜๊ฒฝ์œผ๋กœ ๋ฐฐํฌ)

์˜ต์…˜ 2: ๊ฐœ๋ณ„ ์Šคํฌ๋ฆฝํŠธ ์‚ฌ์šฉ

1. Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ ๋ฐ ํ‘ธ์‹œ
# Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ ๋ฐ ํ‘ธ์‹œ
bash scripts/docker-push.sh YOUR_DOCKER_HUB_USERNAME
2. ๋ฐฐํฌ
# ๋ธ”๋ฃจ ํ™˜๊ฒฝ์— ๋ฐฐํฌ
bash scripts/deploy.sh YOUR_DOCKER_HUB_USERNAME blue

# ๊ทธ๋ฆฐ ํ™˜๊ฒฝ์— ๋ฐฐํฌ
bash scripts/deploy.sh YOUR_DOCKER_HUB_USERNAME green

๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ๊ตฌ์กฐ

ํ”„๋กœ์ ํŠธ์˜ ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค:

  • scripts/common.sh: ๋ชจ๋“  ์Šคํฌ๋ฆฝํŠธ์—์„œ ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ ๋ชจ์Œ
  • scripts/manual-deploy.sh: ๋นŒ๋“œ๋ถ€ํ„ฐ ๋ฐฐํฌ๊นŒ์ง€ ๋ชจ๋“  ๊ณผ์ •์„ ์ž๋™ํ™”ํ•œ ํ†ตํ•ฉ ์Šคํฌ๋ฆฝํŠธ
  • scripts/docker-push.sh: Docker ์ด๋ฏธ์ง€ ๋นŒ๋“œ ๋ฐ Docker Hub ํ‘ธ์‹œ ์ „์šฉ ์Šคํฌ๋ฆฝํŠธ
  • scripts/deploy.sh: ๋ฐฐํฌ ์ „์šฉ ์Šคํฌ๋ฆฝํŠธ (ํŠน์ • ํ™˜๊ฒฝ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐฐํฌ)
  • scripts/init-deploy.sh: ์ดˆ๊ธฐ ๋ฐฐํฌ ํ™˜๊ฒฝ ์„ค์ • ์Šคํฌ๋ฆฝํŠธ
  • scripts/make-executable.sh: ๋ชจ๋“  ์Šคํฌ๋ฆฝํŠธ์— ์‹คํ–‰ ๊ถŒํ•œ ๋ถ€์—ฌ ์Šคํฌ๋ฆฝํŠธ

๊ฐ ์Šคํฌ๋ฆฝํŠธ๋Š” ์„œ๋กœ ์˜์กด์„ฑ์ด ์žˆ์ง€๋งŒ, ํ•„์š”์— ๋”ฐ๋ผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐํฌ ๊ด€๋ จ ํ™•์ธ ๋ฐ ๋””๋ฒ„๊น…

ํ˜„์žฌ ํ™œ์„ฑ ํ™˜๊ฒฝ ํ™•์ธ

grep -Po "server app-\K(blue|green)(?=:8080 weight=10;)" nginx/nginx.conf

์ปจํ…Œ์ด๋„ˆ ์ƒํƒœ ํ™•์ธ

docker ps

๋กœ๊ทธ ํ™•์ธ

# Nginx ๋กœ๊ทธ ํ™•์ธ
docker logs nginx

# ๋ธ”๋ฃจ ํ™˜๊ฒฝ ๋กœ๊ทธ ํ™•์ธ
docker logs app-blue

# ๊ทธ๋ฆฐ ํ™˜๊ฒฝ ๋กœ๊ทธ ํ™•์ธ
docker logs app-green

๋ฐฐํฌ ๋กค๋ฐฑ

๋ฐฐํฌ๊ฐ€ ์‹คํŒจํ•œ ๊ฒฝ์šฐ, ์ด์ „ ํ™˜๊ฒฝ์œผ๋กœ ๋กค๋ฐฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

# ํ˜„์žฌ ํ™œ์„ฑํ™”๋œ ํ™˜๊ฒฝ์ด ๋ธ”๋ฃจ๋ผ๋ฉด, ๊ทธ๋ฆฐ ํ™˜๊ฒฝ์œผ๋กœ ๋กค๋ฐฑ
bash scripts/deploy.sh YOUR_DOCKER_HUB_USERNAME green

# ํ˜„์žฌ ํ™œ์„ฑํ™”๋œ ํ™˜๊ฒฝ์ด ๊ทธ๋ฆฐ์ด๋ผ๋ฉด, ๋ธ”๋ฃจ ํ™˜๊ฒฝ์œผ๋กœ ๋กค๋ฐฑ
bash scripts/deploy.sh YOUR_DOCKER_HUB_USERNAME blue

ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ ์ฐธ์—ฌํ•˜๊ธฐ

๋ธŒ๋žœ์น˜ ์ „๋žต

  1. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ๋˜๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •์„ ์œ„ํ•œ ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ:
git checkout -b feature/๊ธฐ๋Šฅ๋ช…
# ๋˜๋Š”
git checkout -b fix/๋ฒ„๊ทธ๋ช…
  1. ์ž‘์—… ์™„๋ฃŒ ํ›„ ๋ณ€๊ฒฝ์‚ฌํ•ญ ์ปค๋ฐ‹:
git add .
git commit -m "feat: ๊ธฐ๋Šฅ ์„ค๋ช…" # ๋˜๋Š” "fix: ๋ฒ„๊ทธ ์ˆ˜์ • ์„ค๋ช…"
  1. ์›๊ฒฉ ์ €์žฅ์†Œ์— ํ‘ธ์‹œ:
git push origin feature/๊ธฐ๋Šฅ๋ช…
  1. GitHub์—์„œ Pull Request ์ƒ์„ฑ ํ›„ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์š”์ฒญ

์ตœ์‹  ์ฝ”๋“œ ๋™๊ธฐํ™”ํ•˜๊ธฐ

# ์›๋ณธ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ์ตœ์‹  ๋ณ€๊ฒฝ์‚ฌํ•ญ ๊ฐ€์ ธ์˜ค๊ธฐ
git fetch upstream

# ํ˜„์žฌ ๋ธŒ๋žœ์น˜์— ๋ณ€๊ฒฝ์‚ฌํ•ญ ์ ์šฉ
git merge upstream/main

# ๋˜๋Š” ํ•œ ๋ฒˆ์— ๊ฐ€์ ธ์™€์„œ ์ ์šฉ
git pull upstream main

๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ Docker Compose๋กœ ์ง์ ‘ ๋ฐฐํฌํ•˜๊ธฐ

๋กœ์ปฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ Docker Hub ์—†์ด ์ง์ ‘ Docker Compose๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ Docker Hub๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ๋กœ์ปฌ์—์„œ ์ง์ ‘ ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•˜๊ณ  ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๋กœ์ปฌ ๋ฐฐํฌ ์„ค์ •

ํ”„๋กœ์ ํŠธ๋Š” ๋กœ์ปฌ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ๋ณ„๋„์˜ Docker Compose ํŒŒ์ผ(docker-compose-local.yml)์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์ด ์žˆ์Šต๋‹ˆ๋‹ค:

  • ๋‹จ์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค ์‹คํ–‰ (Blue/Green ๋ฐฐํฌ ๋Œ€์‹ )
  • ๋กœ์ปฌ MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ฌ์šฉ
  • ํฌํŠธ ์ง์ ‘ ๋…ธ์ถœ (8080)
  • ๋กœ์ปฌ์šฉ Nginx ์„ค์ • ์‚ฌ์šฉ (nginx-local.conf)

๋กœ์ปฌ ๋ฐฐํฌ ์‹คํ–‰ ๋ฐฉ๋ฒ•

Windows ํ™˜๊ฒฝ

# ๋ฐฐ์น˜ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰
deploy-local.bat

Linux/Mac ํ™˜๊ฒฝ

# ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰ ๊ถŒํ•œ ๋ถ€์—ฌ
chmod +x deploy-local.sh

# ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰
./deploy-local.sh

์ˆ˜๋™์œผ๋กœ ๋กœ์ปฌ ๋ฐฐํฌํ•˜๊ธฐ

  1. Maven์œผ๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋นŒ๋“œ:
# Windows
mvnw clean package -DskipTests

# Linux/Mac
./mvnw clean package -DskipTests
  1. Docker Compose๋กœ ์‹คํ–‰:
docker-compose -f docker-compose-local.yml down
docker-compose -f docker-compose-local.yml up -d --build
  1. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ ‘์†:

๋กœ์ปฌ ๋ฐฐํฌ ๊ด€๋ฆฌ

  • ์ปจํ…Œ์ด๋„ˆ ์ƒํƒœ ํ™•์ธ:
docker ps
  • ๋กœ๊ทธ ํ™•์ธ:
# Nginx ๋กœ๊ทธ
docker logs nginx-local

# ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ๊ทธ
docker logs app-local

# MySQL ๋กœ๊ทธ
docker logs mysql-local
  • ์ปจํ…Œ์ด๋„ˆ ์ค‘์ง€:
docker-compose -f docker-compose-local.yml down
  • ๋ณผ๋ฅจ์„ ํฌํ•จํ•œ ์ „์ฒด ํ™˜๊ฒฝ ์ œ๊ฑฐ:
docker-compose -f docker-compose-local.yml down -v

์ฃผ์˜์‚ฌํ•ญ

  1. ๋กœ์ปฌ ๋ฐฐํฌ๋Š” nginx-local.conf ํŒŒ์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์€ ๋‹จ์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  2. nginx.conf ํŒŒ์ผ์€ ๋ธ”๋ฃจ/๊ทธ๋ฆฐ ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์„ค์ •์ด๋ฏ€๋กœ ๋กœ์ปฌ ๋ฐฐํฌ์—๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  3. ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ์ง„๋‹จํ•˜์„ธ์š”.

GitHub Actions CI/CD ๊ตฌ์„ฑ

ํ•„์š”ํ•œ GitHub Secrets ์„ค์ •

CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ์œ„ํ•ด ๋‹ค์Œ ์‹œํฌ๋ฆฟ์„ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

  1. DOCKER_HUB_USERNAME: Docker Hub ์‚ฌ์šฉ์ž๋ช…
  2. DOCKER_HUB_TOKEN: Docker Hub ์•ก์„ธ์Šค ํ† ํฐ
  3. SERVER_HOST: ๋ฐฐํฌ ์„œ๋ฒ„ ํ˜ธ์ŠคํŠธ (EC2 ํผ๋ธ”๋ฆญ IP)
  4. SERVER_USERNAME: ๋ฐฐํฌ ์„œ๋ฒ„ ์‚ฌ์šฉ์ž๋ช… (์˜ˆ: ubuntu)
  5. SERVER_SSH_KEY: ๋ฐฐํฌ ์„œ๋ฒ„ SSH ๊ฐœ์ธํ‚ค
  6. SERVER_PORT: SSH ํฌํŠธ (๋ณดํ†ต 22)

์ž์„ธํ•œ ๋ฌด์ค‘๋‹จ ๋ฐฐํฌ ๊ตฌ์„ฑ ๋ฐฉ๋ฒ•์€ BLUEGREEN-DEPLOY.md ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages