一、介绍
Containerum - 是俄罗斯一家基于 kubernetes 的容器主机提供商,它允许用户管理无限数量的 Docker 容器,现在推出位于 德国
的基于 OpenStack 的免费容器。
- 官方网站: https://containerum.com
- 免费额度:
256M RAM, 300m CPU, 1 TB Traffic, 5 GB Volume, tickets 24h response.
- 免费期限:
一年
- 如何注册:打开 注册链接,按正常注册流程注册,然后验证邮箱即可
- 如果觉得好用,可以考虑升级为付费用户。
二、管理
Containerum 创建容器没有提供 WEBUI,只能通过官方提供 chkit 工具来管理容器。
1、下载 chkit
wget https://github.com/containerum/chkit/releases/download/v2.1.4/chkit_linux_x64_v2.1.4.tar.gz && \
tar -xvf chkit_linux_x64_v2.1.4.tar.gz && \
mv chkit /usr/bin/ && \
rm -rf chkit_linux_x64_v2.1.4.tar.gz
2、配置 chkit
# chkit login
Enter your email:
[email protected]
Enter your password:
******
OK
3、创建 docker
chkit 提供两种方式创建容器:
方法一:
# chkit run ubuntu --image='jiabing520a/ubuntu-sk:v4' --memory=256Mi --cpu=300m -e 'HTTPS_PORT=443'
run...
OK
注解:ubuntu
是容器名称,--image
指定镜像,支持 Docker Hub 镜像,--memory
指定内存大小,--cpu
指定 CPU 频率,-e
指定镜像环境变量(依具体镜像说明)。
方法二:
# chkit run proxy --configure
Enter image:
jiabing520a/ubuntu-sk:v4
Enter ports:
Enter labels (key=value … key3=value3):
Enter commands (command1 … command3):
Enter environ variables (key=value … key3=value3):
SS_PORT=443 SS_PASSWORD=yhiblog SS_METHOD=aes-256-cfb
Enter CPU cores count(*m):
300m
Enter memory size(*Mi | *Gi):
256Mi
Enter replicas count:
1
OK
4、开放端口
# chkit expose deploy ubuntu -p sshsvc:22:TCP -p httpssvc:443:UDP
expose...
OK
注解:
① 可以多次创建连接,每创建一次就会多一个 svr;
② 严格遵照格式 sshsvc:22:TCP
创建,其中 sshsvc
为服务名,协议(TCP/UDP)必须大写。
5、获取 Deployment 信息
# chkit get deploy
+--------+------+-------------+------+-------+-----+
| NAME | PODS | PODS ACTIVE | CPU | RAM | AGE |
+--------+------+-------------+------+-------+-----+
| ubuntu | 1 | 1 | 300m | 256Mi | 2m |
+--------+------+-------------+------+-------+-----+
6、获取 Service 信息
# chkit get svc
+-------------+---------------+----------+-------------------+--------------------------------+-----+
| NAME | CLUSTER-IP | EXTERNAL | HOST | PORTS | AGE |
+-------------+---------------+----------+-------------------+--------------------------------+-----+
| ubuntu-933b | 10.111.168.94 | true | x1.containerum.io | 12917:22/TCP | 49m |
+-------------+---------------+----------+-------------------+--------------------------------+-----+
注解:
① 12917 映射容器的 22 端口,即要访问容器的 22 端口,需访问主机 HOST 的 12917 端口;
② HOST 是域名,意味着是共享主机 IP(若是直接通过 IP 连接,可能会失败);
③ 本次示范创建的容器已删除。
7、修改 Deployment 参数
# chkit set deploy ubuntu memory=128Mi cpu=300m
set ubuntu...
OK
8、删除 Service
# chkit delete svc ubuntu-933b
delete ubuntu-933b...
OK
注解:先执行第 6 步获取 Service 信息中的 NAME。
9、删除 Deployment
# chkit delete deploy ubuntu
delete ubuntu...
OK
注解:此处的 ubuntu 是创建容器时指定的容器名称。
10、错误排查
① [TCP] ERROR 2017/10/10 09:38:53 Internal error
解决方法:如果确认命令无误,再次执行命令即可。
② [HTTP] ERROR 2017/10/10 09:41:41 got non-ok http response: 400 Bad Request
解决方法:如果确认命令无误,再次执行命令即可。
③ [HTTP] ERROR 2017/10/10 09:51:27 http request execute error: Post http://sdk.containerum.io:3333/session/login: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
解决方法:确认网络是否畅通。
④ [HTTP] ERROR 2017/10/04 23:42:50 got non-ok http response: 401 Unauthorized
解决方法:确认登录信息是否正确。
⑤ [TCP] ERROR 2017/10/05 03:16:06 Object already exists
解决方法:重新执行删除命令即可。
参考链接:
① Start Guide
② Containerum——A Free Russian Docker Hosting