From 1303f1de105a84520a1ed1c849eff25f7ce1d5ad Mon Sep 17 00:00:00 2001 From: yerim <97941141+yerim123456@users.noreply.github.com> Date: Mon, 27 Jan 2025 06:54:09 +0900 Subject: [PATCH 1/5] =?UTF-8?q?docs:=20readme=EC=97=90=20=EC=84=9C?= =?UTF-8?q?=EB=B9=84=EC=8A=A4=20=EA=B4=80=EB=A0=A8=20=EC=84=A4=EB=AA=85=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5e97794..187689a 100644 --- a/README.md +++ b/README.md @@ -1 +1,49 @@ -# Backend \ No newline at end of file +# Cheric + +## **Table of Contents** + +- [개요](#개요) +- [Skills](#skills) +- [ERD](#erd) +- [Technology Stack](#technology-stack) +- [발표자료](#발표자료) + + +## 개요 + +Cheric 는 아트 컬렉터들이 컬렉팅한 작품을 컬렉션에 저장하여 온라인 컬렉션 전시를 할 수 있도록 하는 서비스입니다. 컬렉터들이 다양한 수단을 활용해 자신을 세심하게 표현할 수 있도록 도와주고 있습니다. + +## Skills + +언어 및 프레임워크: `Java 17`, `Spring Boot 3.x.x` + +데이터베이스: `MySQL` + +배포: `AWS EC2`, `Github Actions`, `Docker` + +ETC: `Swagger`, `Lombok`, `Junit`, `Google-Vision-api`, `Chat-Gpt-4.0-api`, `WebClient` + + +## ERD + +![image](https://github.com/user-attachments/assets/ffc2e71b-8b04-473f-b8b7-d974bf57ea47) + +## Technology Stack + +![image](https://github.com/user-attachments/assets/711eef96-b30f-4a0a-b9b9-974569c0ce5e) + +## 발표자료 + +![0](https://github.com/user-attachments/assets/ee48cd4e-cfe9-4475-b5fd-b7bcfadb74a2) +![1](https://github.com/user-attachments/assets/56a9f9ec-8be0-4e65-9fab-3d40466a98a1) +![2](https://github.com/user-attachments/assets/0380e5ec-5524-4c21-80a8-4dfcefa541ce) +![3](https://github.com/user-attachments/assets/73f00664-b734-472a-a7fe-a7b404944608) +![4](https://github.com/user-attachments/assets/854b0618-7538-4b1c-be16-0e2f22c5fc4d) +![5](https://github.com/user-attachments/assets/ad0a1a10-7b93-4745-83af-1aeb51e39677) +![6](https://github.com/user-attachments/assets/06dcc63e-06cd-496d-a82a-679ce317341f) +![7](https://github.com/user-attachments/assets/539fdb59-cc67-4ea9-93d7-963c47987864) +![8](https://github.com/user-attachments/assets/c5095972-3974-478c-b00b-cf4d0d342ef8) +![9](https://github.com/user-attachments/assets/0f363319-4a72-45c3-86eb-3a49b379a004) +![10](https://github.com/user-attachments/assets/8d065778-206f-4479-9aec-c24f8f0ddbc4) +![11](https://github.com/user-attachments/assets/2876860b-f504-403b-8994-ed3be67cbb26) +![12](https://github.com/user-attachments/assets/1725f601-25f4-4edd-af31-aefe3bc711c0) From 3e782f9e5e1e6f737584f25399a1e02960924ed6 Mon Sep 17 00:00:00 2001 From: yerim <97941141+yerim123456@users.noreply.github.com> Date: Mon, 27 Jan 2025 06:55:07 +0900 Subject: [PATCH 2/5] =?UTF-8?q?=F0=9F=93=9D=20docs:=20=20readme=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=20=EC=A0=9C=EB=AA=A9=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 187689a..7a67319 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Cheric +# 🍒 Cheric ## **Table of Contents** From 4f70e6284883749beff58476f65771a3da2552d5 Mon Sep 17 00:00:00 2001 From: yerim1ee Date: Wed, 16 Apr 2025 23:14:51 +0900 Subject: [PATCH 3/5] =?UTF-8?q?:wrench:=20chore:=20docker=20compose.yml=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=20(#6)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 docker-compose.yml diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..b7be394 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,32 @@ +version: "3.8" + +services: + backend: + container_name: backend + image: yerim01/cheric + expose: + - 8080 + ports: + - 8080:8080 + restart: always + depends_on: + - redis + volumes: + - /home/ubuntu/google-credentials.json:/app/google-credentials.json + environment: + - GOOGLE_APPLICATION_CREDENTIALS=/app/google-credentials.json + networks: + - testnet + + redis: + container_name: redis + image: redis + ports: + - "6379:6379" + restart: always + networks: + - testnet + +networks: + testnet: + driver: bridge \ No newline at end of file From 7318cb0b28f7ed0f35760c242915eb07037c71ee Mon Sep 17 00:00:00 2001 From: yerim1ee Date: Wed, 16 Apr 2025 23:15:40 +0900 Subject: [PATCH 4/5] =?UTF-8?q?:wrench:=20chore:=20cd=20pipeline=EC=97=90?= =?UTF-8?q?=20docker=20compose=20=EB=B3=B5=EC=82=AC=20=EB=8B=A8=EA=B3=84?= =?UTF-8?q?=20=EC=B6=94=EA=B0=80=20=EB=B0=8F=20google=20credential=20?= =?UTF-8?q?=ED=8C=8C=EC=9D=BC=20=EC=B2=98=EB=A6=AC=20=EC=B6=94=EA=B0=80=20?= =?UTF-8?q?(#6)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/cd-pipeline.yml | 39 ++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/.github/workflows/cd-pipeline.yml b/.github/workflows/cd-pipeline.yml index 3ca5dfb..4ec8b29 100644 --- a/.github/workflows/cd-pipeline.yml +++ b/.github/workflows/cd-pipeline.yml @@ -23,16 +23,12 @@ jobs: - name: application.yml 생성 run: | cd ./src/main/resources - touch ./application.yml echo "${{ secrets.PROPERTIES }}" > ./application.yml shell: bash - - name: 빌드 권한 부여 - run: chmod +x gradlew - - - name: 프로젝트 jar 파일 제작 + - name: 빌드 권한 부여 및 프로젝트 jar 제작 run: | - chmod +x gradlew + chmod +x gradlew ./gradlew bootJar - name: 웹 이미지 빌드 및 도커허브에 push @@ -41,6 +37,24 @@ jobs: docker build -t ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} . docker push ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} + - name: EC2에 google-credentials.json 복원 + uses: appleboy/ssh-action@master + with: + host: ${{ secrets.HOST }} + username: ubuntu + key: ${{ secrets.KEY }} + script: | + echo "${{ secrets.GOOGLE_CREDS_BASE64 }}" | base64 -d > /home/ubuntu/google-credentials.json + + - name: docker-compose.yml 복사 + uses: appleboy/scp-action@master + with: + host: ${{ secrets.HOST }} + username: ubuntu + key: ${{ secrets.KEY }} + source: "docker-compose.yml" + target: "~/app" + - name: Docker 컨테이너 배포 및 업데이트 uses: appleboy/ssh-action@master with: @@ -48,10 +62,9 @@ jobs: username: ubuntu key: ${{ secrets.KEY }} script: | - sudo docker-compose down - sudo docker pull ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} - sudo docker-compose up -d --force-recreate --no-deps - sudo docker exec -it backend bash -c "export GOOGLE_APPLICATION_CREDENTIALS='/home/ubuntu/google-credentials.json'" - sudo docker exec backend ls -al /app/google-credentials.json - sudo docker exec backend cat /app/google-credentials.json - sudo docker image prune -f + mkdir -p ~/app + cd ~/app + sudo docker pull ${{ secrets.DOCKER_USERNAME }}/${{ secrets.DOCKER_REPO }} + sudo docker-compose down + sudo docker-compose up -d --force-recreate --no-deps + sudo docker image prune -f From ac60d5e0b09e70352b6c4c06ea445516c636ef31 Mon Sep 17 00:00:00 2001 From: yerim1ee Date: Wed, 16 Apr 2025 23:22:37 +0900 Subject: [PATCH 5/5] =?UTF-8?q?:wrench:=20chore:=20develop=20=EC=97=90?= =?UTF-8?q?=EC=84=9C=20=ED=99=95=EC=9D=B8=20=EA=B0=80=EB=8A=A5=ED=95=98?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95=20=EC=B6=94=EA=B0=80=20(#74)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/cd-pipeline.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/cd-pipeline.yml b/.github/workflows/cd-pipeline.yml index 4ec8b29..440daab 100644 --- a/.github/workflows/cd-pipeline.yml +++ b/.github/workflows/cd-pipeline.yml @@ -3,6 +3,9 @@ name: Java CD with Gradle on: push: branches: [ "main" ] + pull_request: + branches: + - "develop" permissions: contents: read