marathon部署一套最简单的前端程序

1.要求:

  成功部署一个index.html到Nginx.

2.实现:

1.建立一个最简单的web工程 first-portal,目录结构如下:
这里写图片描述

说明: 
    index.html是主要的入口文件。
    images中存储的是index.html中使用的图片(用于测试)
    Dockerfile是改工程的docker编译文件,用于打包docker镜像

2.Dockerfile中的内容如下:

FROM nginx
COPY index.html /usr/share/nginx/html/index.html
COPY images/  /usr/share/nginx/html/images/

3.marathon部署文件如下:

cat Marathon.json

{
  "id": "/bigdata-common-frontend-services/first-portal-service",
  "container": {
    "type": "DOCKER",
    "docker": {
      "image": "10.100.134.3:5000/bigdata-common-frontend-services/first-portal-service",
      "network": "BRIDGE",
      "forcePullImage": true,
      "portMappings": [
        {
          "hostPort": 0,
          "containerPort": 80,
          "protocol": "tcp"
        }
      ]
    }
  },
  "healthChecks": [
    {
      "protocol": "HTTP",
      "portIndex": 0,
      "path": "/",
      "gracePeriodSeconds": 5,
      "intervalSeconds": 20,
      "maxConsecutiveFailures": 3
    }
  ],
  "instances": 1,
  "cpus": 0.4,
  "mem": 128
}

3.测试:

    1.查看marathon提供的端口
    2.使用浏览器能访问到index.html

4.说明:

    1.通过部署一个最简单的web应用,来验证自定义前端。
    2.使用marathon+mesos来实现管理docker容器的目的。
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐