Docker For Mac 下安裝 Rancher

原文:如何在 OS X 上安裝 Rancher

Rancher 是 Docker 編排解決方案的一種,好處在于可以做容器編排,網(wǎng)絡(luò),存儲,負(fù)載均衡,還能夠支持云服務(wù)器(比如 Amazon EC2/Azure/DigitalOcean)也能夠兼容 Docker Swarm/Mesos/Kubernetes 等其他的解決方案。自它還沒有發(fā)布也有受到持續(xù)的關(guān)注。它自身還有個 RancherOS 對于 CoreOS 也是一個不小的威脅。

rancher_catalog.png

由于它提供非常優(yōu)化的后臺管理界面,同時也提供 REST API,日常開發(fā)使用中異常的方便。如果非要說出一點不好的,那可能就是它對內(nèi)存有點小要求: 最小 1GB 內(nèi)存 ,因此如果想放在自己 VPS 上的童鞋需要評估下了。

Mac 安裝

這塊也趁著 Docker for Mac 的好處,終于擺脫的 docker-machine的折磨,不用在依賴 VirtualBox,也不在每次裝載 machine 的變量和查找虛擬機的 IP。映射的端口端口都通過 localhost訪問。
Rancher 通過 Docker 來安裝本來說是非常簡單的,它分為服務(wù)端和客戶端。本教程以 Single Node 來講解,不考慮 Multi Node

這塊網(wǎng)上一直沒有太好的解決方案,我看很多國外給出的 解決方案 也比較麻煩,主要是由于 Docker for mac 使用的是 xhyve 作為輕量化的虛擬化方案,而 rancher 安裝 server 端沒有任何問題,在添加主機的時候需要通過 HTTP 來連接 server 端而失敗。下面我來帶大家用最簡單的方案來拆解。無需任何第三方的輔助。

服務(wù)端

如果網(wǎng)速連接 docker hub 過慢可考慮使用代理設(shè)置或者國內(nèi)的鏡像服務(wù),我這里分享一個https://docker.mirrors.ustc.edu.cn,可在 Docker -> Preferences… -> Advanced -> Registry Mirror 添加。

$ docker run -d --name rancher-server --restart=always -p 8181:8080 rancher/server
$ docker logs -f rancher-server
......
time="2016-11-24T03:29:30Z" level=info msg="Updating machine jsons for  [packet packet amazonec2 azure digitalocean]"
time="2016-11-24T03:29:31Z" level=info msg="Creating schema machine, roles [service]" id=1ds17
time="2016-11-24T03:29:32Z" level=info msg="Creating schema machine, roles [project member owner]" id=1ds18
time="2016-11-24T03:29:32Z" level=info msg="Creating schema machine, roles [admin user readAdmin]" id=1ds19
time="2016-11-24T03:29:32Z" level=info msg="Creating schema machine, roles [readonly]" id=1ds20
time="2016-11-24T03:29:41Z" level=info msg=Event eventId=dad01e6e-672c-47bf-8e64-342690a91780 name="machinedriver.activate;handler=goMachineService-machine" resourceId=1md1

看到如上類似的日志說明服務(wù)已經(jīng)初始化完畢,通過瀏覽器訪問http://localhost:8181就可以看到后臺管理界面。

客戶端

先不著急繼續(xù)頁面操作,回到終端上執(zhí)行如下命令獲取 rancher-server 容器的 IP 地址備用

$ docker inspect --format '{{ .NetworkSettings.IPAddress }}' rancher-server
172.17.0.2

接著上面的步驟,在打開頁面能看到 Add Host 按鈕并點擊對于彈出 “Host Registration URL” 選擇 “Something else:” 在后面的輸入框填入上面的 IP 和端口號 http://172.17.0.2:8080 并保存。
之后就是給你一個客戶端(部署主機)的選項,由于我們只添加本機作為部署主機使用,因此這里選擇 Custom,其他不用任何設(shè)置,直接滑倒最底部找到一個執(zhí)行 docker 命令的區(qū)域:


rancher_host.jpg
docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://172.17.0.2:8080/v1/scripts/C963E2BB46185F46E3A1:1479956400000:aNMAicxpI5BtVAzbLAZOp6rw  --name rancher-agent

你會發(fā)現(xiàn)執(zhí)行可能會報錯:

docker: Error response from daemon: Mounts denied:
The path /var/lib/rancher
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.

目前有可能是一個 Docker 的 Bug,因為 /var/lib/rancher 是掛載到已經(jīng)默認(rèn)添加 /private 文件共享,但是它還是報錯,如果你在 Docker 設(shè)置的 File Sharing 添加的話它也不會讓你添加,因此我們需要做一點小修改:

docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v ${HOME}/docker/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://172.17.0.2:8080/v1/scripts/C963E2BB46185F46E3A1:1479956400000:aNMAicxpI5BtVAzbLAZOp6rw  --name rancher-agent

最后點擊頁面的 Close 后會跳轉(zhuǎn)到 Host 的列表,你就能驚喜的發(fā)現(xiàn)添加成功了!


rancher_installed.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,554評論 19 139
  • 以下原文轉(zhuǎn)載于(https://docs.docker.com/docker-for-mac/)(想找中文版的最新...
    Veekend閱讀 7,785評論 0 17
  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一、Docker 簡介 Docke...
    極客圈閱讀 10,751評論 0 120
  • 一、Docker 簡介 Docker 兩個主要部件:Docker: 開源的容器虛擬化平臺Docker Hub: 用...
    R_X閱讀 4,521評論 0 27
  • 內(nèi)容簡介 本書分析了計算機、汽車、鋼鐵等行業(yè)的創(chuàng)新模式,一針見血地指出,良好的管理是導(dǎo)致這些企業(yè)衰敗的原因,通過一...
    少穻閱讀 2,564評論 0 8

友情鏈接更多精彩內(nèi)容