Portainer-ce

agnusdei·2025년 5월 29일

1. 우분투에 Docker CE 최신 버전 설치하기

1-1. 기존 도커 제거 (있다면)

sudo apt-get remove docker docker-engine docker.io containerd runc

1-2. 필수 패키지 업데이트 및 설치

sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release

1-3. Docker 공식 GPG키 등록

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

1-4. Docker 저장소 추가

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

1-5. 패키지 목록 업데이트

sudo apt-get update

1-6. Docker CE, CLI, containerd 설치

sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

1-7. Docker 서비스 실행 확인

sudo systemctl status docker

1-8. (선택) 현재 사용자에게 Docker 권한 부여

sudo usermod -aG docker $USER
  • 이 명령어 실행 후 터미널을 다시 열거나 재로그인하세요.

2. 포테이너(Portainer) 도커 컨테이너로 설치 및 실행

포테이너는 Docker 관리용 웹 UI입니다.
운영 시 컨테이너 내부 설정과 볼륨, 네트워크 연결이 중요합니다.


2-1. Portainer용 데이터 볼륨 생성

포테이너 데이터를 영구 저장하려면 도커 볼륨을 만듭니다.
이렇게 하면 컨테이너가 재시작/삭제되어도 설정이 보존됩니다.

docker volume create portainer_data

2-2. Portainer 컨테이너 실행

docker run -d \
  -p 9000:9000 \
  --name portainer \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce:latest

옵션 설명

  • -d : 백그라운드 실행
  • -p 9000:9000 : 호스트 9000 포트를 포테이너 웹 UI(컨테이너 9000 포트)에 연결
  • --name portainer : 컨테이너 이름 지정
  • --restart=always : 컨테이너가 종료되어도 자동 재시작
  • -v /var/run/docker.sock:/var/run/docker.sock : 도커 엔진 소켓을 연결해서 포테이너가 도커 데몬을 제어할 수 있게 함
  • -v portainer_data:/data : 포테이너 내부 데이터 저장소를 볼륨에 연결

2-3. 컨테이너 상태 확인 및 접속

docker ps
  • 실행 중인 컨테이너 확인

웹 브라우저에서 접속:

http://<우분투서버 IP>:9000

포테이너 초기 관리자 계정 생성 후 사용 가능합니다.


3. 포테이너 관련 중요 네트워크 설정

  • 기본적으로 -p 9000:9000으로 포테이너 웹 UI에 접근 가능합니다.
  • 만약 방화벽(UFW 등)을 사용한다면 포트 9000 열기 필요
sudo ufw allow 9000/tcp
sudo ufw reload
  • 도커 내부 네트워크도 필요 시 커스텀 브리지 네트워크 생성 가능
docker network create portainer_network
  • 그리고 docker run--network portainer_network 옵션 추가해서 여러 컨테이너 간 통신 가능

4. (옵션) 포테이너 HTTPS 적용

  • 기본은 HTTP지만, 운영 환경에서는 HTTPS 필수입니다.
  • HTTPS 적용 시에는 리버스 프록시(Nginx, Traefik 등)를 추천합니다.
  • 또는 자체 TLS 인증서 설정 방법도 있지만 복잡하니 필요시 별도 안내 가능합니다.

요약 & 정리

단계내용명령어 예시 및 설명
1Docker CE 최신 설치Docker 저장소 추가 및 sudo apt install docker-ce
2볼륨 생성docker volume create portainer_data
3포테이너 컨테이너 실행docker run -d -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
4방화벽 설정sudo ufw allow 9000/tcp
5웹 브라우저 접속http://<서버 IP>:9000

profile
DevSecOps, Pentest, Cloud(OpenStack), Develop, Data Engineering, AI-Agent

0개의 댓글