본문 바로가기
반응형

DevOps/Docker4

Dockerfile이란 무엇인가 Intro 자동 배포를 공부하니 정말 알아야 할 것들이 산더미다. 그중에서도 핵심적인 부분이 프로젝트를 JAR 파일로 빌드하여 이미지로 생성하고, 그것을 가상의 컴퓨터에서 실행시키는 것인데, 자동 배포를 구글링을 하여 어찌어찌 성공했으나 이미지 빌드로 Jib 라이브러리를 사용하니 그 과정에 대한 부분은 전혀 모른 채 사용하게 됐다. 어차피 회사마다 CI/CD의 의미가 다르다고 하니 도커 이미지 빌드 과정도 배울 겸 오늘은 dockerfile에 대해서 글을 써보고자 한다. Dockerfile 이란? Dockerfile이란 도커 이미지를 만들기 위한 스크립트 파일이다. 내부에는 도커 이미지를 만들기 위한 명령어들이 순서대로 기술되어 있다. Dockerfile을 이용하지 않고 도커 이미지를 만들 수 있는 방법.. 2024. 2. 5.
배포 자동화에 들어가기 앞서 - CI/CD, docker hub, docker compose 지속적 통합(Continuous Integration, CI) 코드 통합을 위한 단계의 자동화 CI 장점 코드 통합을 위한 단계들의 중복을 최소화함으로서 개발 생산성 향상 주기적인 실행으로인해 문제점을 빠르게 발견 → 버그 수정 용이 ⇒ 코드의 퀄리티 향상 도출 자동 빌드 CI는 새로운 코드 변경 사항이나 커밋이 이루어질 때 자동으로 빌드 프로세스를 실행 → 소스 코드를 컴파일하고 필요한 실행 파일 또는 라이브러리를 생성하는 것을 의미 자동 테스트 빌드 후 정의된 테스트 스위트*를 실행하여 코드 변경이 이전 코드와 호환되며 예상대로 작동하는지 확인 주기적인 실행 CI는 코드 변경이 이루어질 때마다 주기적으로 실행됨 → 빠르게 피드백을 받고 문제를 빠르게 감지하고 수정할 수 있도록 도와줌 버전 관리 시스템.. 2024. 1. 2.
배포 자동화에 들어가기 앞서 - Docker mysql container 생성, IDE에 docker DB container 연동 docker 기본 명령어 docker pull [image name]:[tag(option)] - 도커 이미지 다운로드 - 태그 없을경우 최근 버전으로 다운로드됨 (latest) docker images 도커 이미지 목록 docker ps - 도커 컨테이너 실행중인 목록 출력 - ps → process status의 줄임말 docker ps -a 도커 컨테이너 실행중인 + 종료된 목록 출력 docker create [container name] 도커 컨테이너 생성(only create) → -d 옵션을 사용할 수 없음 docker start [container name or container id] 도커 컨테이너 실행(only start) docker run [container name] 도커 컨테이너 .. 2023. 12. 27.
배포 자동화에 들어가기 앞서 - Docker 기초 도커 서버 환경이 계속해서 바뀜에 따라 DB와 같이 안전해야 할 서버들이 문제가 생기는 경우가 많았다. 그러한 이유로 도입된 개념이 도커이다. 컨테이너 기반의 오픈소스 가상화 플랫폼 컨테이너는 격리된 공간에서 프로세스가 동작하는 기술 호스트형 가상화 방식: OS를 가상화 하는 방식, 비교적 사용법이 간단하지만 무겁고 느려서 운영환경에선 사용할 수 없음 게스트 OS : 호스트형 가상화 방식에비해 성능이 향상되었으나 추가적인OS를 설치하여 가상화 하는 방법이므로 마찬가지로 성능 문제가 있음 프로세스를 격리하는 방식: 단순히 프로세스를 격리하므로 가볍고 빠르게 동작함 → 리눅스 컨테이너 기술 이미지 컨테이너 실행에 필요한 파일과 설정값 등을 포함하고 있는 것 상태값을 가지지않고 변하지 않음 컨테이너는 이미지를.. 2023. 12. 27.
반응형