如何利用Rancher構建Piel.io的微服務交付

本文來自網站Piel.io的建設者,幾個月前,他們開始嘗試在Piel.io上使用Rancher來構建第一個微服務。做者將經過三篇blog跟你們分享一下他們是如何經過Rancher來構建Piel.io的微服務交付的。mysql

正文git

本文但願能夠幫助到那些剛剛接觸Rancher的用戶,對Rancher已經十分熟悉的技術大拿們能夠跳過。第一篇,我將介紹下如何搭建本身的Rancher Server。第二篇,我將介紹下如何構建、配置以及整合本身的Docker Registry。第三篇,咱們將討論下如何經過Stack向企業提供一個可用的平臺,可用於描述、部署和管理多種的業務應用。github

首先,準備一臺虛擬機。我是從vutlr.com上購買了一個Ubuntu 14.04 LTS. sql

前提:安裝Dockerdocker

curl -fsSL https://get.docker.com/ | sh

安裝完成後,用docker –v命令進行驗證:運維

docker -v
 Docker version 1.10.3, build 20f81dd

成功,能夠繼續。curl

接下來下載最新的Rancher,咱們能夠不指定Tag。全部可使用的Tag可今後得到:https://hub.docker.com/r/ranc...tcp

docker pull rancher/server:v1.0.0
v1.0.0: Pulling from rancher/server

8387d9ff0016: Already exists

3b52deaaf0ed: Already exists

4bd501fad6de: Already exists

a3ed95caeb02: Already exists

1dd2ffa08394: Already exists

6574a9c2d75b: Already exists

fedb745f2358: Already exists

951a2617430a: Already exists

04f380ccb3c6: Already exists

6367f33eed6c: Already exists

Digest: sha256:7634423082be8a3c7a7aafa71f3b344f212ce1b75ee3f4263362fbc87812bf6b

Status: Downloaded newer image for rancher/server:v1.0.0

成功!微服務

容器環境下,能夠經過volume來配置數據保持。咱們先建立一個目錄:網站

mkdir -p /data/rancher-server

運行剛纔已下載的Rancher image
注:docker run能夠直接下載Rancher image,爲了讓你們瞭解整個過程我在此把這兩步拆解了

sudo docker run -d -v /data/rancher-server:/var/lib/mysql --restart=always -p 80:8080 rancher/server:v1.0.0

f83e74a6b8f5c20d74acad519004635a74662954634966606e9046a7be29233b

看上去已經成功了,咱們來驗證一下:

docker ps

CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                            NAMES

f83e74a6b8f5        rancher/server:v1.0.0   "/usr/bin/s6-svscan /"   35 seconds ago      Up 34 seconds       3306/tcp, 0.0.0.0:80->8080/tcp   distracted_elion

啓動了,但名字有點醜陋(Docker的自動命名致使),因此我幹掉了這個容器,從新運行命令並增長 --name rancher-server參數。

sudo docker run -d -v /data/rancher-server:/var/lib/mysql --restart=always -p 80:8080 --name rancher-server rancher/server:v1.0.0

1fa9cc4013e8e17f1ac175b011955308089819e8c10d423e3b06ed09c536e864

 

docker ps

CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                            NAMES

1fa9cc4013e8        rancher/server:v1.0.0   "/usr/bin/s6-svscan /"   3 seconds ago       Up 2 seconds        3306/tcp, 0.0.0.0:80->8080/tcp   rancher-server

接下來訪問Rancher Server主頁:

圖片描述

好極了,如今Rancher Server已經啓動,能夠經過8080端口訪問並配置了數據保持,當咱們升級或者遷移Rancher Server時全部的配置均可以被保存。

接下來我把主題從淺色設置爲了深色,你能夠跳過此步驟。

圖片描述

同時,咱們還能夠經過頁面右下角的設置切換顯示語言,可進行一鍵切換。(已提供中文支持)

圖片描述

如今任何人均可以經過此URL訪問到Rancher,因此我啓用了Github認證(Rancher目前支持AD、Github、本地帳戶以及OpenLDAP四種認證方式)。

系統管理 > 訪問控制

根據頁面說面完成訪問控制配置,我在此就再也不重複說明了。

圖片描述

輸入客戶端ID以及客戶端祕鑰,Github認證頁面將彈出並要求確認和受權。

配置完成後,咱們已經成功設置了Rancher Server的訪問控制。

讓咱們重啓回顧下咱們完成了哪些工做:

咱們下載了Rancher Server 1.2.0-pre3的容器鏡像並使其運行在端口8080,啓動了數據保持方便往後的升級和運維操做。同時啓用了經過github進行認證的訪問控制。

下一篇文章,我會建立一個Docker Registry而且介紹如何在Rancher中使用它。

相關文章
相關標籤/搜索