Page History
란쳐에서 배포된 도커를 실행하는 방법은 두가지가 있다. 하나는 도커 이미지 경로를 통해서 직접 추가하는방법과
도커 컴포져를 이용하는 방법이다.
- 단일 도커이미지 : 지정된 서버에서 구동
- 도커 컴포져 : 업데이트 관리가 되며, 여러 도커이미지를 묶을수 있음
직접추가 - Add Container
docker run 명령을 UI에서 수행할수 있다.
docker-compose 호환모드로 추가하려면 Add Stack기능을 사용하며
다음장점이 있습니다.
- 여러개의 상호연동하는 도커를 띄울수 있습니다. ex> api + dbserver
- 여러개의 host가 있다고 하면 특정 서버로 띄우는 Scale in/out 포함스케줄링이 가능합니다.
도커 컴포져 - Add Stack
기본적으로 docker-composer 의 2.0 과 모두호환되며 , 개별로 구성된 도커 이미지를 그룹화할수 있다.
io.rancher 는 서비스 구동을 위한 란쳐만을 위한 옵션이며
특정 라벨링이 된 서버에만 뛰우게 한다던지, 3대를 유지하게 스케일 아웃옵션을 준다던지 할수 있으며
업데이트에 따른 무중단 배포도 지원한다. 참고 : https://rancher.com/docs/rancher/v1.2/en/cattle/labels/
기본 도커 컴포져 셋팅에서, 확장되는 컨셉이며 운영 전략에 맞게 도커 이미지를 더 강력하고 쉽게 셋팅을 할수 있다.
도커컴포져
Code Block | ||||
---|---|---|---|---|
| ||||
version: '2'
services:
labs-morp:
image: psmon/labs-morp
environment:
ASPNETCORE_ENVIRONMENT: Development
ports:
- 8080:5000/tcp
labels:
io.rancher.scheduler.affinity:host_label: server=sub1
io.rancher.container.hostname_override: container_name
|
Code Block | ||||
---|---|---|---|---|
| ||||
version: '2'
services:
owncloud:
image: owncloud
ports:
- 8080:80
volumes:
- owndata:/var/www/html/data
- owndata:/var/www/html/config
labels:
io.rancher.scheduler.affinity:host_label: host=docker1
io.rancher.container.hostname_override: container_name
links:
- postgres:owncloud-db
postgres:
image: postgres:9.6
ports:
- 5432:5432
environment:
- POSTGRES_PASSWORD=xxxxxx
volumes:
- owndata:/etc/postgresql
- owndata:/var/lib/postgresql
labels:
io.rancher.scheduler.affinity:host_label: host=docker1
io.rancher.container.hostname_override: container_name
volumes:
owndata:
driver: rancher-nfs
driver_opts:
exportBase: /owndata |
도커파일
...