자동화

[Docker] Docker 아키택처와 Dind, Dood
💡 들어가며 Gitlab으로 CI 파이프라인을 구축하며 만났던 문제를 해결하는 과정에서 새로 알게된, Docker의 개념에 대해 소개합니다. 주제는 Docker Architecture, Dind, DooD 입니다. 🚫 Trouble GitLab Runner로 CI 파이프라인을 만들고, 통합 테스트를 위해 TestContainer를 사용했습니다. TestContainer로 생성된 MySql, Redis 컨테이너와 연결하는 과정에서 시행착오를 겪었습니다. GitLab Runner를 Docker out of Docker 형태로 Host Machine에서 컨테이너를 실행해서 발생하는 오류였습니다. ✅ 해결책 : Docker in Docker 컨테이너 Docker 아키택처 Docker in docker, Dock..

[CI/CD]Spring boot 프로젝트 testContainer를 사용한 Gitlab-CI 파이프라인 구축하기
들어가며... 최근 프로젝트를 하면서 Spring boot로 만든 프로젝트를 통합테스트 하기위해 TestContainers 를 사용하게 되었다. 로컬환경에서 테스트 컨테이너를 구성하고 통합 테스트를 성공하였지만, GitLab CI 단계에서 상당한 시행착오를 격게 되었다. TestContainer를 활용한 통합 테스트 환경을 구성하고, 이를 Gitlab CI 파이프라인에서 활용할 수 있는 방법을 기록해본다. 프로젝트 TestContainers 환경 설정 TestContainers 란? TestContainers란 Docker Container를 활용한 일회용 인스턴스를 제공하는 오픈소스 라이브러리이다. TestContainers를 사용함으로써 다음과 같은 이점을 얻을 수 있다. 통합 테스트를 수행하기 위해..

[Github Action] 소개와 간단한 실습
Github Actions Github에서 소프트웨어 workflow를 자동화 해주는 툴! 자동화 대상 Build test, Unit test, CI/CD, version test, Scheduled task Core Concept Workflow, Event, Job, Step, Action 스크립트 살짝 맛보기 name: CI #name # Event on: push: branches: [ "main" ] # Job jobs: check-bats-version: runs-on: ubuntu-latest # Step steps: # Action/commands - uses: actions/checkout@v2 - name: Run a one-line script run: echo Hello, world..