Skip to content

Commit

Permalink
feat: dev, prod 환경 분리
Browse files Browse the repository at this point in the history
  • Loading branch information
itsme-shawn committed Jan 30, 2024
1 parent c529826 commit 9f70b9e
Show file tree
Hide file tree
Showing 4 changed files with 87 additions and 9 deletions.
46 changes: 42 additions & 4 deletions .github/workflows/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- main
- dev

jobs:
build:
Expand Down Expand Up @@ -34,7 +35,22 @@ jobs:
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1

- name: Build, tag, and push image to Amazon ECR
- name: [dev] Build, tag, and push image to Amazon ECR
if: github.ref == 'refs/heads/dev'
run: |
# docker image 빌드
# ECR push
aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com
docker build -t reddi-server-dev .
docker tag reddi-server-dev:latest 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server-dev:latest
docker push 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server-dev:latest
- name: [main] Build, tag, and push image to Amazon ECR
if: github.ref == 'refs/heads/main'
run: |
# docker image 빌드
# ECR push
Expand All @@ -47,7 +63,28 @@ jobs:
docker push 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server:latest
- name: executing remote ssh commands using password
- name: [dev] executing remote ssh commands using password
if: github.ref == 'refs/heads/dev'
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.EC2_HOST }}
username: ubuntu
key: ${{ secrets.EC2_KEY }}
script: |
cd /home/ubuntu/
aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com
## docker-compose 실행
sudo chmod 666 /var/run/docker.sock
sudo docker rm -f $(sudo docker ps -q --filter "ancestor=533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server-dev:latest" --filter "expose=8081" --filter "expose=6380")
docker pull 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server-dev:latest
docker compose -f docker-compose-dev.yml up -d
docker image prune -f
- name: [main] executing remote ssh commands using password
if: github.ref == 'refs/heads/main'
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.EC2_HOST }}
Expand All @@ -61,8 +98,9 @@ jobs:
## docker-compose 실행
sudo chmod 666 /var/run/docker.sock
sudo docker rm -f $(docker ps -qa)
# sudo docker rm -f $(docker ps -qa)
sudo docker rm -f $(sudo docker ps -q --filter "ancestor=533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server:latest" --filter "expose=8080" --filter "expose=6379")
docker pull 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server:latest
docker compose -f docker-compose-dev.yml up -d
docker compose -f docker-compose-prod.yml up -d
docker image prune -f
11 changes: 6 additions & 5 deletions docker-compose-dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,20 @@ version: "3.7"

services:
web:
# platform: linux/amd64
container_name: spring-reddi-server
platform: linux/amd64
container_name: spring-reddi-server-dev
image: 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server-dev:latest
build:
context: .
dockerfile: Dockerfile
ports:
- "8081:8080"
- "8081:8081"
environment:
- SPRING_PROFILES_ACTIVE=dev
env_file:
- .env.dev
redis:
image: "redis:latest"
container_name: redis
container_name: redis-dev
ports:
- "6380:6379"
- "6380:6380"
21 changes: 21 additions & 0 deletions docker-compose-prod.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
version: "3.7"

services:
web:
platform: linux/amd64
container_name: spring-reddi-server
image: 533267191976.dkr.ecr.ap-northeast-2.amazonaws.com/reddi-server:latest
build:
context: .
dockerfile: Dockerfile
ports:
- "8080:8080"
environment:
- SPRING_PROFILES_ACTIVE=prod
env_file:
- .env.prod
redis:
image: "redis:latest"
container_name: redis
ports:
- "6379:6379"
18 changes: 18 additions & 0 deletions src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,24 @@ spring:
jpa:
hibernate:
ddl-auto: update # 추후 수정
security:
oauth2:
client:
registration:
google:
client-id: ${CLIENT_ID}
client-secret: ${CLIENT_SECRET}
redirectUri: ${GOOGLE_REDIRECT_URL_LOCAL}
scope: profile, email
---
spring:
config:
activate:
on-profile: prod
import: optional:file:.env.prod[.properties]
jpa:
hibernate:
ddl-auto: update # 추후 수정
security:
oauth2:
client:
Expand Down

0 comments on commit 9f70b9e

Please sign in to comment.