bluemix建立docker容器

 

簡介:

bluemix是基於kubernetes來服務的免費雲空間。綁定信用卡後能夠建立一個月的集羣,一個月後會被刪除。node

下面示例介紹如何使用kubernetes dashboard來建立一個容器,並提供給公網服務。docker

示例教程爲部署一個apache官方鏡像,並映射80端口給公網服務。apache

一:建立集羣

以下圖位置,建立資源api

或者點擊左上角的而後選擇儀表板session

選擇Kubernetes Service,兩個位置同樣,以下圖所示app

繼續建立,以下圖tcp

 選擇資源位置,選擇集羣類型爲免費,給定一個集羣名稱,而後建立集羣。以下圖所示。測試

 

自動進入集羣概況,查看工做程序節點ui

等待狀態spa

 

 

 

 當工做狀態變爲正常,且有公共IP,則表示集羣建立完畢。入下圖所示。

 

二:部署鏡像

我不教大家那些下載客戶端,配置客戶端,生成token……………………

簡單的使用圖形GUI來部署一個apache鏡像。

記下你的公共IP,而後訪問Kubernetes儀表板,以下圖所示:

直接建立服務便可,以下圖:

選擇建立應用

應用名稱隨便本身寫一個,容器鏡像,是hub.docker.com裏面的,本例是httpd,apache的官方鏡像。

服務必定要選外部,這樣才能夠被外部訪問,端口和目標端口都填80,鏡像開放的是80,因此容器開放的也是80,外部訪問也用80。容器組個數爲1。

高級選項能夠選擇特權模式,環境變量。

點擊部署後便可。

 

三:配置外部IP

首先記下你的公共IP,看前面有個地方告訴你。

概述中會看到服務下面的apache,咱們剛建立的服務,不是綠色對號。

點擊右邊的三個點,編輯yaml文件。

其實只添加一行外部公共IP便可。

原有代碼入下:

{
  "kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "apache",
    "namespace": "default",
    "selfLink": "/api/v1/namespaces/default/services/apache",
    "uid": "7f6fbe12-0603-11e9-882d-************",
    "resourceVersion": "35434",
    "creationTimestamp": "2018-12-22T16:06:10Z",
    "labels": {
      "k8s-app": "apache"
    }
  },
  "spec": {
    "ports": [
      {
        "name": "tcp-80-80-4wg7q",
        "protocol": "TCP",
        "port": 80,
        "targetPort": 80,
        "nodePort": 32145
      }
    ],
    "selector": {
      "k8s-app": "apache"
    },
    "clusterIP": "172.***.***.***",
    "type": "LoadBalancer",
    "sessionAffinity": "None",
    "externalTrafficPolicy": "Cluster"
  },
  "status": {
    "loadBalancer": {}
  }
}

增長後以下:

{
  "kind": "Service",
  "apiVersion": "v1",
  "metadata": {
    "name": "apache",
    "namespace": "default",
    "selfLink": "/api/v1/namespaces/default/services/apache",
    "uid": "7f6fbe12-0603-11e9-882d-************",
    "resourceVersion": "35434",
    "creationTimestamp": "2018-12-22T16:06:10Z",
    "labels": {
      "k8s-app": "apache"
    }
  },
  "spec": {
    "ports": [
      {
        "name": "tcp-80-80-4wg7q",
        "protocol": "TCP",
        "port": 80,
        "targetPort": 80,
        "nodePort": 32145
      }
    ],
    "selector": {
      "k8s-app": "apache"
    },
    "clusterIP": "172.***.***.***",
    "type": "LoadBalancer",
    "externalIPs": [ #這行增長 "168.***.***.***1" #這是你的公共IP ], #這行增長 "sessionAffinity": "None",
    "externalTrafficPolicy": "Cluster"
  },
  "status": {
    "loadBalancer": {}
  }
}

點擊更新便可

四:驗證

訪問你的公共IP,便可測試。

apache的官方鏡像,貌似,也就這麼一句話,告訴你,工做正常。

結束語:

雖然只有一個月的時間,可是勝在免費,速度快。

想幹什麼,就看你了。

主要是修改一下yaml讓服務知道監聽哪一個IP地址的信息。

推薦一個docker鏡像

jackadam/bluemix

相關文章
相關標籤/搜索