Linux에서 Portainer설치하기


0. 먼저 Docker가 설치되어 있는지 확인

docker --version
docker compose version
sudo systemctl status docker

설치된 상태라면 아래 1번을 건너뛰고 2번 Portainer 설치로 이동합니다.


1. Docker Engine이 없다면 먼저 설치

기존 Debian 패키지와 충돌할 수 있는 패키지를 제거합니다.

sudo apt remove docker.io docker-compose docker-doc podman-docker containerd runc

Docker 공식 저장소를 추가합니다.

sudo apt update
sudo apt install ca-certificates curl

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/debian/gpg \
  -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc

sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Docker Engine, CLI, Buildx, Compose Plugin을 설치합니다.

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

Docker가 실행 중인지 확인합니다.

sudo systemctl status docker
sudo docker run hello-world

Docker 공식 문서 기준으로 Debian 13 Trixie는 Docker Engine 지원 대상이며, 설치 패키지에는 docker-ce, docker-ce-cli, containerd.io, docker-buildx-plugin, docker-compose-plugin이 포함됩니다. (Docker Documentation)


1-1. sudo 없이 docker 명령 쓰기

개인용 PC라면 편의상 현재 사용자를 docker 그룹에 추가할 수 있습니다.

sudo groupadd docker 2>/dev/null || true
sudo usermod -aG docker $USER
newgrp docker

확인:

docker run hello-world

주의할 점은 docker 그룹은 사실상 root급 권한을 줍니다. Docker 공식 문서도 docker 그룹이 root-level privileges를 부여한다고 경고합니다. 개인 개발용 PC에서는 보통 허용하지만, 여러 사람이 쓰는 장비라면 신중해야 합니다. (Docker Documentation)


2. Portainer CE 설치

초급자에게는 LTS 태그를 추천합니다. Portainer 공식 LTS 설치 문서도 portainer/portainer-ce:lts 이미지를 사용합니다. (포테이너 문서)

docker volume create portainer_data

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

설치 확인:

docker ps

portainer 컨테이너가 Up 상태이면 정상입니다.


3. 브라우저에서 접속

KDE에서 브라우저를 열고 접속합니다.

https://localhost:9443

처음 접속하면 자체 서명 SSL 인증서 경고가 나올 수 있습니다. 로컬 설치에서는 정상입니다. Portainer 공식 문서도 기본적으로 9443 포트에서 자체 서명 SSL 인증서를 생성해 사용한다고 설명합니다. (포테이너 문서)

처음 화면에서:

Create admin user
→ Username / Password 설정
→ Get Started
→ Local Docker environment 선택

4. 8000 포트는 열지 않는 것을 추천

Portainer 공식 예시는 80009443을 모두 열지만, 8000은 Edge Agent 기능용 TCP tunnel 포트입니다. 일반적인 개인 PC 로컬 Docker 관리에는 필요 없습니다. 공식 문서도 8000은 Edge compute 기능을 쓸 때만 필요하다고 설명합니다. (포테이너 문서)

그래서 위 명령에서는 일부러 이것만 열었습니다.

9443 → Portainer 웹 UI

5. 업데이트 방법

나중에 Portainer를 업데이트할 때는 이렇게 하면 됩니다.

docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce:lts

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

portainer_data 볼륨을 유지하므로 관리자 계정과 설정은 유지됩니다.


6. 제거 방법

Portainer 컨테이너만 제거:

docker stop portainer
docker rm portainer

설정 데이터까지 완전 삭제:

docker volume rm portainer_data





댓글 쓰기 · 수정

0 댓글