bluemix创建docker容器

时间:2025-05-14 12:38:08

简介:

bluemix是基于kubernetes来服务的免费云空间。绑定信用卡后可以创建一个月的集群,一个月后会被删除。

下面示例介绍如何使用kubernetes dashboard来创建一个容器,并提供给公网服务。

示例教程为部署一个apache官方镜像,并映射80端口给公网服务。

一:创建集群

如下图位置,创建资源

bluemix创建docker容器

或者点击左上角的bluemix创建docker容器然后选择仪表板

选择Kubernetes Service,两个位置一样,如下图所示

bluemix创建docker容器

继续创建,如下图

bluemix创建docker容器

选择资源位置,选择集群类型为免费,给定一个集群名称,然后创建集群。如下图所示。

bluemix创建docker容器

自动进入集群概况,查看工作程序节点

bluemix创建docker容器

等待状态

bluemix创建docker容器

当工作状态变为正常,且有公共IP,则表示集群创建完毕。入下图所示。

bluemix创建docker容器

二:部署镜像

我不教你们那些下载客户端,配置客户端,生成token……………………

简单的使用图形GUI来部署一个apache镜像。

记下你的公共IP,然后访问Kubernetes仪表板,如下图所示:

bluemix创建docker容器

直接创建服务即可,如下图:

bluemix创建docker容器

选择创建应用

bluemix创建docker容器

应用名称随便自己写一个,容器镜像,是hub.docker.com里面的,本例是httpd,apache的官方镜像。

服务一定要选外部,这样才可以被外部访问,端口和目标端口都填80,镜像开放的是80,所以容器开放的也是80,外部访问也用80。容器组个数为1。

高级选项可以选择特权模式,环境变量。

bluemix创建docker容器

bluemix创建docker容器

点击部署后即可。

三:配置外部IP

首先记下你的公共IP,看前面有个地方告诉你。

概述中会看到服务下面的apache,我们刚创建的服务,不是绿色对号。

点击右边的三个点,编辑yaml文件。

bluemix创建docker容器

bluemix创建docker容器

其实只添加一行外部公共IP即可。

原有代码入下:

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

点击更新即可

四:验证

访问你的公共IP,即可测试。

apache的官方镜像,貌似,也就这么一句话,告诉你,工作正常。

bluemix创建docker容器

结束语:

虽然只有一个月的时间,但是胜在免费,速度快。

想干什么,就看你了。

主要是修改一下yaml让服务知道监听哪个IP地址的信息。

推荐一个docker镜像

jackadam/bluemix