Portainer 사용해보기

Portainer는 “Docker Desktop의 웹 버전”처럼, 브라우저에서 컨테이너, 이미지, 볼륨 등을 클릭으로 관리할 수 있게 해주는 툴이다.

 

1. 이미지 다운로드

docker pull portainer/portainer-ce

 

2. portainer_data를 공유하는 volume 생성

docker volume create portainer_data
  • Portainer의 영구 데이터 저장소(설정, 사용자 정보 등)를 저장할 Docker 볼륨을 생성한다. 이 볼륨은 컨테이너가 삭제되어도 데이터를 유지할 수 있게 해준다.

3. 컨테이너 실행하기

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

 

  • -d: 백그라운드에서 실행하게 한다. (detached mode)
  • -v /var/run/docker.sock:/var/run/docker.sock: 컨테이너에서 호스트 Docker에 직접 접근할 수 있도록 Unix socket 공유를 하며 이를 통해 Portainer 컨테이너가 호스트 Docker의 엔진을 제어 가능하게 된다. 
  • -v portainer_data:/data: portainer_data라는 이름의 Docker Volume을 생성/마운트를 하여 Portainer의 설정, 사용자 정보, 상태 등을 /data 디렉토리에 저장시킨다. (컨테이너를 삭제하더라도 이 데이터는 유지된다.)
  • --restart=always: Docker의 재시작 정책이며, 이 옵션은 다음 상황에서 컨테이너를 자동 재시작시킨다:
    - 컨테이너가 비정상적으로 종료되는 경우
    - Docker 데몬이 재시작 되는 경우
    - 서버가 재부팅되는 경우

 

실행 중인 컨테이너 확인하기

docker ps -a

CONTAINER ID   IMAGE                             COMMAND                  CREATED             STATUS                           PORTS                                        NAMES
598aaaa07513   portainer/portainer-ce            "/portainer"             26 seconds ago      Up 26 seconds                    8000/tcp, 9443/tcp, 0.0.0.0:9000->9000/tcp   elated_villani

 

이렇게 실행한 후에 localhost:9000으로 접속하면 다음과 같은 브라우저 기반 GUI화면을 볼 수 있다.

여기서 비밀번호를 생성하면 된다. 일단, password1234로 지정해두었다.

 

만약 오래 켜둔 상태라면 세션이 종료되어 다음과 같은 화면이 나올 수 있다.

 

만약 세션이 종료된 경우에는 restart 명령어로 재시작해주면 된다.

docker restart 598aaaa07513

 

이제 재시작해서 접속을 하게 되면 다음과 같은 화면들을 볼 수 있다. 실제 로컬에서 도커에서 어떤 이미지를 설치했고, 어떤 컨테이너를 실행하고 있는지를 파악할 수 있다.

'개발환경 > Docker' 카테고리의 다른 글

컨테이너 가상화란  (0) 2025.05.07