docker7 [Docker] 컨테이너 실행 과정 파헤치기 앞 글에서 도커의 이론적인 구조를 정리해본 후, 실제로 컨테이너가 어떤 과정으로 실행되는지 궁금해졌습니다.직접 도커를 설치하고 테스트하면서, 어떤 과정으로 컨테이너가 실행되는지 정리해보려고 합니다.Docker 설치테스트 환경은, M3 맥북에서 가상머신을 구성하여 진행했습니다.아키텍처 : aarch64linux : Rocky Linux 9.3 기존에 설치된 패키지 삭제sudo dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine docker 설치# docker 저장소 추가sudo dnf config-manager .. 2025. 12. 20. [Docker] 도커와 컨테이너란 무엇일까? 개발하다 보면 환경 차이 때문에 예상치 못한 오류를 자주 만나게 됩니다.특히 여러 사람이 서버를 관리하는 환경에서는 각자 다른 방식으로 설정하다 보니 일관성이 무너지곤 합니다.컨테이너를 활용하면 이런 문제들을 깔끔하게 해결할 수 있다는 걸 알게 되었고, 제대로 이해하기 위해 정리한 내용들을 공유합니다.컨테이너를 실행하기 위해서는 먼저 Docker가 필요합니다.그렇다면 Docker란 무엇이고, 왜 애플리케이션을 컨테이너화하여 사용하는 걸까요? 애플리케이션을 왜 컨테이너화 해야할까?컨테이너를 사용하면 주변 환경과의 격리가 가능하고 애플리케이션이 실행할 때 사용하는 모든 것이 컨테이너 안에 준비됩니다.예를 들어, 우리가 만든 Spring Boot 애플리케이션의 경우 대부분의 의존성은 Gradle에 의해 관리되.. 2025. 10. 6. [GitLab] GitLab 설치 및 초기 설정 프로젝트를 진행하면서 체계적인 코드 관리와 팀 협업을 위한 관리 시스템의 중요성을 느끼게 되었습니다.지금까지는 클라우드 기반의 Github를 주로 활용해왔으나, 최근 많은 기업들이 데이터 보안과 자체 관리를 위해 온프레미스 기반의 GitLab 자체 호스팅을 채택하는 경향이 있어 이를 학습해보기로 결정했습니다.초기 설치 과정부터 프로젝트 운영, CI/CD 파이프라인 설정에 이르기까지 실제 프로젝트를 구축하며 공부한 내용들을 기록으로 남기고자 합니다.테스트 진행 중인 개발 환경이 M3 칩셋의 맥북이다 보니, 패키지 의존성 문제와 환경 통일성을 확보하기 위해 Docker 컨테이너 기반으로 Gitlab 서버를 설치하는 방식을 선택했습니다. 시작하기 전에GitLab은 다양한 환경에 맞는 설치 가이드를 제공하고 .. 2025. 9. 26. [kubernetes] 컨테이너 인프라 환경이란? 컨테이너 인프라 환경이란? 리눅스 운영체제의 커널 하나에서 여러개의 컨테이너가 격리된 상태로 실행되는 인프라 환경이다. 여기서 컨테이너는 목적을 위해 독립적으로 작동하는 프로세스이다. 다수의 관리자가 수백대의 서버를 함께 관리해야하는 기업의 경우 서버 관리의 일관성을 유지하는 것이 중요하기 때문에 각각의 프로그램을 컨테이너로 구현해야한다. 여러 사람이 만져서 설정의 일관성이 떨어진 서버를 snowFlake라고 하는데 이런 경우 컨테이너 인프라 환경을 구성하면 서버의 파편화를 방지하는데 효과적이다. 컨테이너 인프라 환경의 구성 요소 : 컨테이너 엔진 : 컨테이너를 생성하고 관리하는 데 사용되는 소프트웨어입니다. 대표적인 컨테이너 엔진으로는 Docker, containerd, cri-o 등이 있다. 이러한 .. 2023. 5. 25. [docker] 바인드마운드 vs 볼륨 도커 컨테이너에 사용된 파일들은 컨테이너가 삭제될 때 함께 삭제된다. 도커에서 많은 애플리케이션을 저장해서 계속적으로 사용할 수 있도록 해주는 옵션이 바로 볼륨(volume)과 바인드 마운트(bind mount)이다. 바인트 마운트 호스트의 특정 디렉터리를 직접 연결 호스트의 파일 시스템과 컨테이너 내부를 연결해 양쪽의 내용이 동시에 반영되는 방법 볼륨 볼륨 공간(에서 디렉터리를 마운트)을 만든 후 그 볼륨 공간을 연결 도커가 관리하는 볼륨을 컨테이너와 연결 → 공유 디렉터리에 생성 바인드 마운트 바인드 마운트로 호스트와 컨테이너를 연결하기 위해서는 연결 대상이 되는 컨테이너 내부의 디렉터리 구조를 먼저 알아야 한다. 예를 들어 nginx의 경우 수정해야 하는 파일의 경로 는 /etc/nginx/ngin.. 2023. 5. 24. [docker] 간단한 사용 예제 도커의 간단한 사용 예제 실습 환경은 rockylinux8 에서 진행했다. docker 설치 & 레지스트리 설정 sudo yum install -y yum-utils sudo yum-config-manager --add-repo [https://download.docker.com/linux/centos/docker-ce.repo](https://download.docker.com/linux/centos/docker-ce.repo) 설치 과정 중 터미널에 GPG key 가 나오는데 docker의 공식 홈페이지와 비교하여 안정성을 확인한다. GPG key : 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35 도커 데몬을 재시작하고, 리눅스와 함께 시작하도록 system.. 2023. 5. 24. [docker] docker 란? 도커(Docker)는 linux 컨테이너를 기반으로하는 오픈소스 가상화 플랫폼이다. 컨테이너는 소프트웨어를 패키지화하여 실행하는데 사용되며, 도커는 이러한 컨테이너를 관리하고 배포하는 도구이다. 도커는 컨테이너 관리 기능 외에도 명령어 입력도구인 CLI와 명령어을 받아들이는 도커 데몬과 이미지를 저장하는 레지스트리로 구성되어있다. 도커와 쿠버네티스를 함께 설치할 경우 쿠버네티스는 컨테이너 오케스트레이션을 위해 도커에 포함된 컨테이너디를 활용한다. 컨테이너란? 가상화 환경에서는 각각의 가상머신이 모두 독립적인 운영체제 커널을 가지고 있기 때문에 그만큼 자원을 더 소모해야 하고 성능이 떨어진다. 하지만 컨테이너 인프라 환경은 운영체제 커널 하나에 컨테이너 여러개가 격리된 형태로 실행되기 때문에 자원을 효율적.. 2023. 5. 19. 이전 1 다음