랜서로 용기 만들기(Ubuntu 14.04.1 LTS에서)

7841 단어 rancherioDocker

개시하다


앞서 작성한 기사http://qiita.com/t-fukai/items/274246ed9a91f23ee536에서는 CentOS 6에서 Rancher 서버를 실행했지만 CentOS 6에서는 컨테이너를 만들 수 없습니다.
그래서 이 기사에서 랜서를 Ubuntu에서 실행한다.
어렵기 때문에 지난번 보도된 내용과 마찬가지로 저는 우분투에 Docker를 설치했고 Rancher를 시작하는 관리 서버부터 썼습니다.

작업 환경


이번에도 Runcher 서버용 VM과 Docker 호스트용 VM을 준비해 Rancher를 가동해 봤다.
두 기계의 운영체제는 모두 Ubuntu14이다.04.1 LTE, Docker의 버전은 1.4.1입니다.
Rancher에는 Docker의 버전 1.4 이상이 필요합니다.
# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"
# docker version
Client version: 1.4.1
Client API version: 1.16
Go version (client): go1.3.3
Git commit (client): 5bc2ff8
OS/Arch (client): linux/amd64
Server version: 1.4.1
Server API version: 1.16
Go version (server): go1.3.3
Git commit (server): 5bc2ff8

Ubuntu 14.04.1 LTE에 Docker 1.4.1 설치


Ubuntu에 appt-get docker를 직접 설치하면 이전 버전이 설치됩니다. 아래 페이지를 참고하여 docker 1.4.1을 설치하십시오.
http://christina04.hatenablog.com/entry/2014/12/19/194022
# echo deb http://get.docker.com/ubuntu docker main > /etc/apt/sources.list.d/docker.list
# apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
# apt-get update
# apt-get install lxc-docker-1.4.1
또한 설치 후 다음과 같은 오류가 발생할 수 있습니다.
FATA[0000] Error response from daemon: Unknown filesystem type on /dev/mapper/docker-202:2-1266014-35405e6a386cda6a4c5c9b83e789c2b70e45792cc2e8c28114a769d343ac366e-init
↓ 참조대응.
https://github.com/docker/docker/issues/4036#issuecomment-53174208
# service docker stop
# apt-get remove lxc-docker
# apt-get autoremove
# rm -rf /var/lib/docker
# apt-get update
# apt-get install linux-image-extra-`uname -r`
# apt-get install lxc-docker-1.4.1
# service docker start
# docker info
Containers: 0
Images: 0
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Dirs: 0
Execution Driver: native-0.2
Kernel Version: 3.13.0-45-generic
Operating System: Ubuntu 14.04.1 LTS
CPUs: 1
Total Memory: 990 MiB
Name: yarai-rancher01
ID: 24SL:ZZMM:TN63:XIXW:RPWG:KIJ2:67OT:FSDB:QAP4:6HXJ:W34C:36K7
WARNING: No swap limit support

Rancher 관리 서버 시작 & Docker 호스트 추가


이 절차는 이전의 문장과 대체로 같다.
Docker 호스트의 추가 방법은 이전 글의 방법과 미묘하게 다르지만, 대개 어떤 방법이든 가능하다고 생각합니다. (확인되지 않았습니다.)
그러면 관리 서버를 시작합니다.
다음 명령을 사용하여 Rancher 관리 서버로 컨테이너를 시작합니다.
# docker run -d -p 8080:8080 rancher/server
다음 웹 UI는 브라우저를 통해 관리 서버 컨테이너를 시작하는 VM 8080 포트에 액세스할 수 있습니다.
http://qiita.com/t-fukai/items/274246ed9a91f23ee536
그런 다음 Docker 호스트를 추가합니다.
아까 웹 UI에서 "Register a new Host"를 클릭합니다.

이렇게 되면 다음과 같은 표시가 나타날 것이다.
여기 있습니다.위에 적힌 sudo docker run ...를 복사하고 붙여넣은 다음 추가할 Docker 호스트의 시스템에서 실행합니다.

내 환경에서 이 명령을 실행할 때 다음과 같은 오류가 발생할 수 있습니다.
하지만 호스트의 추가가 완료되기를 개의치 않고 기다렸다.
나는 이 오류가 발생한 원인을 모른다.
FATA[0050] Error response from daemon: Cannot destroy container 413311abca605b42e6b142c4fcee5d678e4e21dee4bd2c70964a876f9019ea8e: Driver devicemapper failed to remove root filesystem 413311abca605b42e6b142c4fcee5d678e4e21dee4bd2c70964a876f9019ea8e: Device is Busy

보태다


마지막 기사에서 Docker 호스트의 추가 방법은 다음과 같다.
추가하고 싶은 인산 아드레날린 중 아래 명령을 실행하면 추가할 수 있다.
# docker run --rm -it --privileged -v /var/run/docker.sock:/var/run/docker.sock rancher/agent http://<管理サーバのIP>:8080
이렇게 하면 Docker 호스트도 추가할 수 있을 것 같지만 이번 기사에서는 이전에 쓴 웹 UI에서 명령을 복사하고 붙이는 방법을 사용했기 때문에 일단 그것을 썼다.

용기의 제작


nginx 컨테이너를 만들어 보세요.
Docker 호스트를 추가한 후의 웹 UI는 다음과 같습니다.
http://qiita.com/t-fukai/items/274246ed9a91f23ee536
여기에서 호스트 (그림 속 yarai-ranceher02) 아래에 있는 "+ Add Contaainer"를 누르십시오.

컨테이너를 만드는 모습이 나온다.
다양한 설정 항목이 있는데 이번에는 용기의 이름과 원래 그림만 설정합니다.

Name에 컨테이너 이름을 입력하고 Source Image에 원본 이미지를 입력합니다.
여기에 쌍방이 모두 "nginx"를 입력했다.
입력하고 아래 녹색 "Create"버튼을 클릭합니다.

원래의 Hosts 화면으로 돌아가.
방금 컨테이너 제작을 지시한 컨테이너에는 컨테이너 제작 진도가 표시됩니다.
"Network Agent"컨테이너도 nginx 외에도 동시에 제작됩니다.
이 컨테이너는 Rancher가 제공하는 덮어쓰기 네트워크의 에이전트처럼 Docker 호스트가 처음 용기를 만들 때 동시에 만든 것이다.
이번에 이 컨테이너들을 만드는 데 약 1분 30초가 걸렸다.

두 개의 컨테이너가 완성되면 화면은 다음과 같다.
원래 호스트의 한가운데 있는 사슬 같은 아이콘 옆에 호스트의 IP 주소가 있어야 하는데 처음에는 아무리 해도 나오지 않았다.
페이지를 다시 불러오면 나타날 것입니다. 브라우저에서 페이지를 다시 불러오십시오.

다시 불러온 후 호스트의 IP 주소가 나왔습니다. (그림에 모자이크가 걸려 있습니다.)

브라우저에서nginx의 페이지를 볼 수 있도록 포트 연결을 설정합니다.
nginx 용기 옆에 있는 을 누르십시오.
팝업 드롭다운 메뉴에서 "Edit"를 클릭합니다.

용기의 설정 화면이 나왔다.
이번에는 Port Buinding 섹션을 입력합니다.

"→ 80"왼쪽에 있는 텍스트 상자에 호스트 포트를 입력하여 80번 포트에 바인딩합니다.
이번에 8888포트를 지정했습니다.
입력한 후 아래의 녹색 "Save"버튼을 클릭합니다.

브라우저로 접근해 보십시오 http://<Docker ホストのIP>:8888.
nginx의 페이지를 보았습니다. 컨테이너가 순조롭게 제작되고 있습니다.

끝말


이번에는 유분투 14.04.1 LTCS에서 랜서를 돌려 컨테이너를 만드는 절차를 적었다.
다음은 컨테이너 간의 협력을 원한다.

좋은 웹페이지 즐겨찾기