반응형
- 환경: Odroid SBC + various HDDs
- 최초 작성: 2020-09-07
- 마지막 업데이트: 2020-09-08
- 글을 퍼가실 땐 꼭 출처를 남겨주세요. :)
Portainer Stack
원래는 Portainer에서 굳이 Stack으로 서비스들을 실행시킬 필요는 없습니다. 하지만 Portainer에서 서비스들이 사용할 Volume들을 생성할 때 마운트 지점을 자유롭기 정하기 위해선 local-persist 라는 드라이버가 필요한데, 이 드라이버가 ARM 플랫폼에선 지원하지 않기 때문에 Odroid나 Raspberry Pi 등 ARM SBC에선 Stack으로 서비스들을 실행시켜야만 합니다.
복잡해 보이지만 Docker에 익숙해지면 익숙해질수록 docker-compose (Portainer 에서의 Stack)을 사용하는 게 훨씬 쉽습니다.
Portainer 웹 패널에서 왼쪽 Stacks 메뉴로 들어갑니다.
위의 Add stack 버튼을 눌러 새로운 Stack을 추가합니다.
기본 값에서 아래 텍스트 에디터에 docker-compose.yml 에 쓰이는 문법 그대로 설정 값들을 넣으시면 됩니다.
Portainer에서 Stack은 docker-compose 를 관리 Portainer의 규칙에 맞게 관리하기 위한 일종의 Superset입니다. 실제로 작동하진 않지만, 아래와 같은 docker-compose 설정값을 그대로 넣을 수 있습니다.
docker-compose 의 문법을 그대로 사용하기 때문에 docker-compose에 대해서 알고 계셔야 합니다. 이 가이드에선 복사, 붙여넣기 만으로도 작동이 되게끔 템플릿을 드리지만, 지속적인 유지관리를 위해선 Docker와 docker-compose에 익숙해지실 필요가 있습니다.
version: '2'
services:
web-service:
image: provider/web-service:latest
container_name: web-service
ports:
- 80:80
- 443:443
restart: unless-stopped
database-service:
image: provider/database-service:latest
container_name: database-service
ports:
- 3306:3306
environments:
- DB_ROOT_PASSWORD: password
restart: unless-stopped
실제로 어떻게 사용할 수 있는 지는 앞으로 몇 가지 서비스들과 함께 같이 추가해보도록 하겠습니다.
HDD 라벨
Portainer에서 컨테이너를 생성할 때, 컨테이너의 설정 파일이 들어갈 디렉토리를 지정할 수 있습니다. OMV 웹 패널에선 공유 폴더로 쉽게 지정 가능하지만, Docker를 사용할 땐 시스템 내 실제 디렉토리 이름을 알아야 합니다.
SSH 로 OMV 에 접속해 다음 명령어를 입력합니다.
ls -al /srv
OMV의 파일 시스템은 모두 /srv 경로 밑에, 앞에 dev-disk-by-라벨 이란 이름으로 마운트됩니다. 제 경우 dev-disk-by-label-HDD 란 디렉토리가 나타나는데, 이것을 봤을 때 실제 하드디스크는 /srv/dev-disk-by-label-HDD 에 마운트된 것을 알 수 있습니다.
라벨은 하드디스크의 경로 이름을 줄여주고, 여러 개의 디스크가 마운트되어 있을 때 구별이 잘 가게끔 도와줍니다. 파일 시스템을 만들 때 라벨을 지정하지 않았더라도 나중에 파일시스템 메뉴에서 지정해줄 수 있습니다.
만약 라벨이 없을 경우 실제 마운트되는 디렉토리 이름이 UUID 등 복잡한 식별자를 사용하기 때문에 굉장히 길어집니다.
이 경로를 잘 기억해서 후에 Docker 컨테이너를 만들 때 사용합니다.
반응형
'NAS & ODROID > OMV 5 NAS' 카테고리의 다른 글
OMV 5 NAS - Docker - Transmission (토렌트 다운로드) (18) | 2020.09.10 |
---|---|
OMV 5 NAS - Docker - Nextcloud (클라우드 스토리지) (13) | 2020.09.08 |
OMV 5 NAS - Docker와 Portainer 설치 (4) | 2020.09.04 |
OMV 5 NAS - MiniDLNA (가전제품 미디어 스트리밍) (0) | 2020.09.04 |