Skip to content

Commit 30ec937

Browse files
authored
Merge pull request #93 from GTable/feature/#58-docker-setting
refactor: nowait-app-user-api 도커 배포 테스트
2 parents b4338e7 + e1dc7bb commit 30ec937

4 files changed

Lines changed: 113 additions & 10 deletions

File tree

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
name: Dev User CI/CD With Docker
2+
3+
on:
4+
push:
5+
branches:
6+
- develop
7+
paths:
8+
- 'nowait-app-user-api/**'
9+
- 'nowait-common/**'
10+
- 'nowait-domain/domain-core-rdb/**'
11+
- 'nowait-domain/domain-user-rdb/**'
12+
- 'nowait-infra/**'
13+
- 'build.gradle'
14+
- 'settings.gradle'
15+
- 'gradle/**'
16+
17+
env:
18+
DOCKERHUB_REPO: jihuneddie/nowait_dev
19+
DIVISION: user
20+
EC2_DEPLOY_PATH: /home/ubuntu/spring-github-action-user-docker
21+
22+
jobs:
23+
build-with-gradle:
24+
runs-on: ubuntu-latest
25+
steps:
26+
- name: Checkout
27+
uses: actions/checkout@v3
28+
29+
- name: Set up JDK 17
30+
uses: actions/setup-java@v3
31+
with:
32+
java-version: '17'
33+
distribution: 'zulu'
34+
35+
- name: Make gradlew executable
36+
run: chmod +x ./gradlew
37+
38+
- name: Set YML
39+
run: |
40+
mkdir -p nowait-app-user-api/src/main/resources
41+
echo "${{ secrets.APPLICATION_DEV_USER_YML }}" \
42+
| base64 --decode \
43+
> nowait-app-user-api/src/main/resources/application-user.yml
44+
find nowait-app-user-api/src
45+
46+
- name: Build User JAR
47+
run: ./gradlew clean :nowait-app-user-api:bootJar -x test
48+
49+
- name: Login to DockerHub
50+
uses: docker/login-action@v1
51+
with:
52+
username: ${{ secrets.DOCKERHUB_USERNAME }}
53+
password: ${{ secrets.DOCKERHUB_ACCESS_TOKEN }}
54+
55+
56+
- name: Build and Push Docker Image
57+
run: |
58+
docker build -t ${{ secrets.DOCKERHUB_USERNAME }}/nowait_dev:user ./nowait-app-user-api
59+
docker push ${{ secrets.DOCKERHUB_USERNAME }}/nowait_dev:user
60+
61+
deploy:
62+
name: Deploy to EC2
63+
runs-on: ubuntu-latest
64+
needs: build-with-gradle
65+
66+
steps:
67+
- name: Checkout
68+
uses: actions/checkout@v3
69+
70+
- name: Copy docker-compose.yml to EC2
71+
uses: appleboy/scp-action@master
72+
with:
73+
host: ${{ secrets.EC2_HOST }}
74+
username: ${{ secrets.EC2_USER }}
75+
key: ${{ secrets.EC2_SSH_KEY }}
76+
port: ${{ secrets.EC2_PORT }}
77+
source: "docker-compose.yml"
78+
target: ${{ env.EC2_DEPLOY_PATH }}
79+
80+
- name: Login to DockerHub
81+
uses: docker/login-action@v1
82+
with:
83+
username: ${{ secrets.DOCKERHUB_USERNAME }}
84+
password: ${{ secrets.DOCKERHUB_ACCESS_TOKEN }}
85+
86+
- name: Deploy to EC2
87+
uses: appleboy/ssh-action@master
88+
env:
89+
AWS_ACCESS_KEY_ID: ${{ secrets.DEVSERVER_CICD_ACCESS_KEY }}
90+
AWS_SECRET_ACCESS_KEY: ${{ secrets.DEVSERVER_CICD_SECRET_KEY }}
91+
AWS_REGION: ap-northeast-2
92+
with:
93+
host: ${{ secrets.EC2_HOST }}
94+
username: ${{ secrets.EC2_USER }}
95+
key: ${{ secrets.EC2_SSH_KEY }}
96+
port: ${{ secrets.EC2_PORT }}
97+
envs: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION
98+
script: |
99+
cd ${{ env.EC2_DEPLOY_PATH }}
100+
sudo docker-compose -p nowait_dev pull nowait-app-user-api
101+
sudo docker-compose -p nowait_dev up -d nowait-app-user-api
102+

docker-compose.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,18 +26,19 @@ services:
2626
- ./nowait-app-admin-api:/app
2727
restart: always
2828

29-
# nowait-app-user-api:
29+
nowait-app-user-api:
3030
# build:
3131
# context: nowait-app-user-api
3232
# dockerfile: Dockerfile
33-
# container_name: nowait-app-user-api
34-
# ports:
35-
# - "8081:8081"
36-
# depends_on:
37-
# - mysql
38-
# volumes:
39-
# - ./nowait-app-user-api:/app
40-
# restart: always
33+
image: jihuneddie/nowait_dev:user
34+
container_name: nowait-app-user-api
35+
ports:
36+
- "8082:8081"
37+
depends_on:
38+
- mysql
39+
volumes:
40+
- ./nowait-app-user-api:/app
41+
restart: always
4142

4243
volumes:
4344
mysql_data:

nowait-app-admin-api/src/main/java/com/nowait/ApiAdminApplication.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,4 @@ public static void main(String[] args) {
1010
org.springframework.boot.SpringApplication.run(ApiAdminApplication.class, args);
1111
}
1212
}
13+

nowait-app-user-api/src/main/java/com/nowait/ApiUserApplication.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,3 @@ public static void main(String[] args) {
1111
SpringApplication.run(ApiUserApplication.class, args);
1212
}
1313
}
14-

0 commit comments

Comments
 (0)