IT/CI_CD

AWS EC2 Potainer 설치

binary? 2024. 10. 1. 10:07

AWS EC2 Potainer 설치

 

AWS EC2(Ubuntu) 환경에서 Jenkins와 Docker를 사용해서 배포 자동화를 진행했었는데요. 이번에는 Docker 를 조금 더 편리하게 사용하고자 Potainer라는 것을 설치하고 사용해보려고합니다. 아래에 그 방법을 정리해보겠습니다.

Portainer란?

  • Docker 및 Kubernetes 같은 컨테이너 오케스트레이션 플랫폼을 관리하고 모니터링하기 위한 웹 기반 인터페이스를 제공하는 도구입니다.
  • 주로 개발자나 시스템 관리자들이 컨테이너화된 애플리케이션을 더 쉽게 관리하고 배포할 수 있도록 도와줍니다.

Portainer설치하는 방법

  • 아래 공식 문서에 설치하는 방법이 나와있습니다. 매우 간단하기 때문에 바로 해보겠습니다.

https://docs.portainer.io/start/install/server/docker/linux

 

  • 데이터볼륨 생성
  •  
docker volume create portainer_data
 

  • Potainer 컨테이너 실행
  • 저는 aws에서 7000 포트로 접속하려고 하므로 아래처럼 하였습니다.
docker run -d -p 7000:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

 

 

  • --name=portainer -> 컨테이너의 이름을 portainer로 설정
  • --restart=always -> 컨테이너가 종료되어도 Docker가 자동으로 다시 시작되도록 설정
  • -v /var/run/docker.sock:/var/run/docker.sock -> Docker의 소켓 파일을 컨테이너 내부로 마운트
  • -v portainer_data:/data -> Portainer의 데이터 볼륨을 생성하고 마운트, Portainer가 사용하는 설정 및 상태 데이터를 이 볼륨에 저장
  • portainer-ce -> Portainer Community Edition을 의미하며, latest는 최신 버전을 사용

  • 설치는 벌써 완료되었습니다.
  • AWS를 사용한다면 인바운드 규칙을 설정해야합니다.

  • 인바운드 규칙 편집 클릭

  • 포트번호 7000번 추가하고 저장

  • aws퍼블릭ip:7000 으로 접속
  • 저는 오류가 났는데 확인해보니 설치 후 5분안에 접속안하면 보안상의 이유로 거절된다고 하네요. 이런 경우 Potainer를 종료하고 다시 시작해야한답니다.
docker run -d -p 7000:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
 

  • 다시 접속하니 잘되네요.아디, 비번 정하고 Create user 클릭

  • Home화면에 와보면 local이라고 뭔가 하나 있습니다. local 클릭

  • Container가 5개나 있네요. Container 클릭

  • 현재 AWS의 Docker에 생성된 컨테이너가 모두 나오네요.
  • Pontainer와 bitcoin 제외하고는 테스트로 만들었던거라 삭제하겠습니다.

Potainer 설치 완료하였습니다~ 설치가 간단하네요.

AWS EC2 터미널에서 명령어로 확인하다가 웹페이지에서 보니까 훨씬 보기 편하고 관리하기 용이할 것으로 보입니다. Docker를 사용한다면 Potainer를 사용하는게 100배는 나아보이네요~

고생하셨습니다. 감사합니다~