-
[Continuous Deploy] Github actions .env 파일 관리하기 with Github private repository 목적 Continuous Deploy 과정에서 Dotenv 파일을 꽤 번거로운(?) 녀석이다. 보안상 Github repository에 push하긴 찝찝하다. 그래서 이 파일을 Continuous Deploy 과정에서 리눅스의 Echo & Cat 과 Github Actions Secret Key를 사용해서 만들어줬는데, 가독성과 관리면에서 "이게 맞나?" 싶다. 이를 해결하기 위한 첫번째 방법을 찾아서 기록해본다. 사용 된 아키텍처 Github Public & Private Repository는 빌드될 파일이 있는 레포지토리를 뜻하며 Github Private Repository는 .env 파일이 따로 보관되어 있는 Repository를 뜻한다. 위 두가지를 한개의 계정으로 진행할 수 있지만 본 글에서는..
-
[GCP] Cloud Run과 Cloud Build를 사용하여 Spring Boot 배포하기 시스템 아키텍처 Local 설정 Spring Boot의 application-prod.yml 설정 Github에 DB 정보를 올릴 수 없고, 없으면 서비스를 실행할 수 없기에 보안 문제가 발생하지 않고 DB정보를 컨테이너에 담을 수 있을지 고민했다. 결과적으로 환경변수를 사용하기로 했다. 위와 같이 설정하면 application-prod.yml에 시스템 환경변수 값을 불러올 수 있다. Dockerfile 설정 Cloud Run의 경우 컨테이너 기반으로 서비스를 실행하기 때문에 도커를 활용하여 빌드하였다. FROM adoptopenjdk/openjdk11 COPY gradlew . COPY gradle gradle COPY build.gradle . COPY settings.gradle . COPY src..
-
[Microk8s] 쿠버네티스 기본 실습 쿠버네티스란? Kubernetes 클러스터는 안정적이고 확장 가능한 방식으로 컨테이너화된 애플리케이션을 호스팅합니다. DevOps를 염두에 두고 Kubernetes는 업그레이드와 같은 유지 관리 작업을 매우 간단하게 만듭니다. MicroK8s란? MicroK8s 는 워크스테이션이나 개인 장치에서 실행하기 위한 용도로 사용되며 K8s의 경량화 버전이라고 보면 쉽습니다. MicroK8s는 실제 쿠버네티스처럼 타 컴퓨터와도 연결이 가능하며 K8s에서 사용하는 대부분의 기능을 지원합니다. Linux Ubuntu는 MicroK8s와 호환성이 가장 좋은 OS이며 설치 또한 어렵지 않습니다. 테스트 환경 Welcome to Ubuntu 20.04.5 LTS (GNU/Linux 5.15.0-1025-gcp x86_64..
-
[Docker swarm] 활용해보기 with AWS 시작하며 AWS Instance information type: t2.micro size: 3 node ( master, worker1, worker2 ) os: ubuntu 20.04 AWS Instance Network information master instance public ip: 13.209.5.232 private ip: 172.31.32.34 worker1 instance public ip: 15.165.159.52 private ip: 172.31.36.212 worker2 instance public ip:13.209.67.244 private ip: 172.31.47.47 AWS security group 기본적으로 보안 설정에 맞게 세팅해야하지만 테스트를 위해 모든 보안포트를 오픈..
-
[한이음 2022] MSA기반 인사 관리 시스템 Popool 본 게시글은 2022년 한이음 ICT멘토링 공모전의에 참여하여 Popool 서비스를 개발한 과정과 소개를 담고 있습니다. Introduce 대규모 트래픽에 유동적으로 대응 가능한 Micro Service Architecture 를 이해하고 설계하며 Netflix의 Eureka와 AWS Elastic Banstalk 서비스를 활용하여 클라우드 네이티브한 형태의 아키텍처를 구현 Role Devops Engineer & Backend Engineer Spring Cloud Eureka와 Spring Config Server 그리고 Github Actions를 활용한 MSA 멀티모듈 배포에 집중 Architecture AWS Service Amazon Elastic Beanstalk Amazon Simple S..
-
[Dynamic Designer Developer DDD] 오모지 본 게시글은 Dynamic Designer Developer DDD 8기 아몬드 초코볼 팀이 오모지 서비스를 개발한 과정과 소개를 담고 있습니다. 더불어 본 서비스는 현재 개발 단계에 있습니다. Introduce 내일 결혼식가는데 이렇게 입고가면 어떨까? 다음주에 소개팅가는데 이 패션을 이상한가? 각종 이벤트마다 입어야할 옷이 고민일 때 상담할 수 있는 2030 타겟의 일상 패션 공유 앱 Role Devops Engineer & Backend Engineer Architecture Google Cloud Platform Google Cloud Run Google Cloud Build Google Cloud SQL Google Secret Manager Web Framework Spring Boot Sp..