從官方網站docker 鏡像啟動flink是比較容易的,如下:
docker run --name flink_jobmanager -d -t flink:1.6.1-hadoop28-scala_2.11-alpine jobmanager
docker run --name flink_jobmanager -d -t flink:1.6.1-hadoop28-scala_2.11-alpine taskmanager
部署到mesos+marathon 平台上就發現有點不知所措。因為要傳遞一個運作時參數進去。
後來,終于搞定了。這裡分享給大家參考參考。

{
"id": "/flink-cluster/flink-jobmanager",
"cmd": null,
"cpus": 1,
"mem": 1024,
"disk": 0,
"instances": 1,
"acceptedResourceRoles": [
"*"
],
"container": {
"type": "DOCKER",
"docker": {
"forcePullImage": false,
"image": "flink:1.6.1-hadoop28-scala_2.11-alpine",
"parameters": [],
"privileged": false
},
"volumes": [],
"portMappings": [
{
"containerPort": 0,
"labels": {},
"protocol": "tcp",
"servicePort": 10013
}
]
},
"healthChecks": [
{
"gracePeriodSeconds": 300,
"ignoreHttp1xx": false,
"intervalSeconds": 60,
"maxConsecutiveFailures": 3,
"path": "/",
"port": 8081,
"protocol": "HTTP",
"timeoutSeconds": 20,
"delaySeconds": 15
}
],
"labels": {
"org.projectcalico.label.role": "frontend"
},
"networks": [
{
"name": "frontend",
"mode": "container"
}
],
"portDefinitions": [],
"args": [
"jobmanager"
]
}