marathon部署一个docker register
1.要求:
成功部署一个docker register
暂时还不能实现重启容器数据不丢,如果要保障重启容器数据不丢失,那就要使用volume进行外部存储。
2.实现:
cat marathon.json
{
"id": "/bigdata-base-services/registry",
"cpus": 1,
"mem": 256,
"disk": 0,
"instances": 1,
"container": {
"type": "DOCKER",
"docker": {
"image": "registry",
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 5000,
"hostPort": 5000,
"servicePort": 0,
"protocol": "tcp",
"name": "http",
"labels": {}
}
],
"privileged": false,
"parameters": [],
"forcePullImage": false
},
"volumes": [
{
"containerPath": "/tmp/registry ",
"hostPath": "/cloudstar/data/registry",
"mode": "RW"
}
]
},
"healthChecks": [
{
"gracePeriodSeconds": 300,
"intervalSeconds": 60,
"timeoutSeconds": 20,
"maxConsecutiveFailures": 3,
"portIndex": 0,
"path": "/",
"protocol": "HTTP",
"ignoreHttp1xx": false
}
],
"upgradeStrategy": {
"minimumHealthCapacity": 0,
"maximumOverCapacity": 0
},
"constraints": [
[
"hostname",
"CLUSTER",
"bigdata03"
]
]
}
3.测试:
通过marathon提供的端口能访问仓库内容
http:
4.说明:
1.想通过marathon+meso实现微服务,也想管理器docker-register,这样全部微服务相关的容器都能用marathon管理起来。
2.通过这个测试为后续微服务做好知识探索