Docker 핵심 가이드: 컨테이너 가상화부터 이미지 빌드까지
Docker 개요
컨테이너 기술의 탄생
DotCloud라는 스타트업이 2010년에 PaaS(Platform as a Service) 형태로 서비스를 시작하면서 등장했다. 2013년 오픈소스로 공개된 후 기업명도 Docker Inc.로 변경되면서 지금의 모습을 갖추게 되었다.
Linux Container(LXC)라는 커널 수준의 경량 가상화 기술을 기반으로 하며, Go 언어로 개발되었다. 핵심 철학은 "소프트웨어 운영 ...
7월 6일 03:20에 게시됨
Maven 플러그인을 활용한 SpringBoot 애플리케이션 Docker 이미지 구축
개요
본 문서에서는 Maven 플러그인을 활용하여 SpringBoot 애플리케이션을 Docker 이미지로 패키징하고, 사설 레지스트리에 업로드하는 과정을 상세히 설명합니다. Docker 명령어에 익숙하지 않은 개발자는 먼저 기본 Docker 명령어 관련 자료를 참고하시기 바랍니다.
Docker Registry
Docker Registry 2.0 설치
docker run -d -p 5000:5000 --restart=always --name my ...
7월 3일 03:39에 게시됨
Harbor - Docker 비공개 레지스트리 구축 가이드
사전 요구사항
Docker 버전 17.06.0 이상, docker-compose 버전 1.18.0 이상이 필요하다.
Harbor 설치 과정
설치 파일은 공식 GitHub 저장소(https://github.com/goharbor/harbor/releases)에서 다운로드할 수 있다.
1. 압축 해제
# tar -xvf harbor-offline-installer-v1.9.4.tgz -C /usr/local/
2. 환경 설정 파일 수정
harbor.yml 파일을 열어 필요한 설정을 구 ...
6월 16일 01:14에 게시됨
Linux cgroups를 활용한 리소스 격리 기술 분석
cgroups 기반의 자원 제한 메커니즘
컨테이너 기술에서 핵심적인 역할을 하는 Control Groups (cgroups)는 리눅스 커널이 제공하는 자원 관리 시스템입니다. Docker는 이 기술을 기반으로 각 컨테이너에 대해 메모리, 프로세스, CPU 등 다양한 자원을 세밀하게 제어합니다.
기본 동작 원리
컨테이너 생성 시, Docker는 내부적으로 해당 컨테이너의 고유 ID를 이름으로 하 ...
6월 14일 00:59에 게시됨
컨테이너 환경 관리를 위한 Docker 핵심 가이드
호스트와 컨테이너 간 파일 전송
컨테이너에서 로컬 머신으로 데이터를 옮길 때 docker cp를 활용합니다. 다음은 대상 경로를 지정하는 기본 문법입니다.
docker cp <대상_컨테이너>:<내부_경로> <호스트_저장위치>
실제 사용 예시:
docker cp web_app:/var/log/nginx/access.log /home/admin/logs/access.log
반대로 호스트의 파일을 컨테이너 내부로 ...
6월 10일 22:13에 게시됨
mydocker에서 데이터 볼륨 마운트 기능 구현
이 글은 mydocker 프로젝트를 통해 컨테이너의 데이터 지속성을 구현하는 과정을 설명합니다. 특히 -v 옵션을 활용해 호스트 시스템의 디렉터리를 컨테이너 내부에 마운트하는 방식으로, 컨테이너 종료 후에도 데이터가 유지되도록 구현했습니다.
기본 개념: bind mount
bind mount은 하나의 파일 시스템 위치를 다른 위치에 연결하는 기술입니다. 이는 두 디렉터리 간에 ...
5월 28일 00:01에 게시됨
K3s와 Rancher 설치 및 설정 가이드
설정을 위한 3대의 서버 준비:
- 192.168.88.85: Rancher 설치
- 192.168.88.71: K3s 서버 설치
- 192.168.88.72: K3s 에이전트 설치
Rancher 설치
Docker가 이미 설치된 192.168.88.85에서 다음 명령어를 사용하여 Rancher를 실행합니다.
docker run -d --name rancher_server -p 8080:80 -p 8443:443 -v /data/rancher:/var/lib/rancher --restart=unless-stopped - ...
5월 22일 02:42에 게시됨