首页 > IT职业 > IT图书 > 『高级篇』docker之Mesos微服务部署(26)
dockerhub的方式。源码:https://github.com/limingios/msA-docker mesos分支


启动zookeeper
通过提供的源码shell脚本直接运行。
sh start.sh
启动redis
sh start.sh
启动mysql
sh start.sh

启动marathon-lb
sh start.sh


编写的shell 脚本
#!/bin/bashdocker run -d --net=host --privileged --hostname=192.168.66.101 -e MESOS_PORT=5051 -e MESOS_MASTER=zk://192.168.1.130:2181/mesos -e MESOS_SWITCH_USER=0 -e MESOS_CONTAINERIZERS=docker,mesos -e MESOS_LOG_DIR=/var/log/mesos -e MESOS_WORK_DIR=/var/tmp/mesos -v "$(pwd)/mesos/log/mesos:/var/log/mesos" -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" -v /var/run/docker.sock:/var/run/docker.sock -v /sys:/sys -v /usr/bin/docker:/usr/local/bin/docker mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support --no-hostname_lookup --ip=192.168.66.101
sh mesos-slave.sh

编写的shell 脚本 mesos.sh
!/bin/bash docker run -d --net=host --hostname=192.168.66.102 -e MESOS_PORT=5050 -e MESOS_ZK=zk://192.168.1.130:2181/mesos -e MESOS_QUORUM=1 -e MESOS_REGISTRY=in_memory -e MESOS_LOG_DIR=/var/log/mesos -e MESOS_WORK_DIR=/var/tmp/mesos -v "$(pwd)/mesos/log/mesos:/var/log/mesos" -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" mesosphere/mesos-master:1.7.0 --no-hostname_lookup --ip=192.168.66.102
编写的shell 脚本 marathon.sh
#!/bin/bashdocker run -d --net=host mesosphere/marathon:v1.5.12 --master zk://192.168.1.130:2181/mesos --zk zk://192.168.1.130:2181/marathon
sh mesos.sh sh marathon.sh

编写的shell 脚本 marathon.sh
#!/bin/bashdocker run -d --net=host --privileged --hostname=192.168.66.103 -e MESOS_PORT=5051 -e MESOS_MASTER=zk://192.168.1.130:2181/mesos -e MESOS_SWITCH_USER=0 -e MESOS_CONTAINERIZERS=docker,mesos -e MESOS_LOG_DIR=/var/log/mesos -e MESOS_WORK_DIR=/var/tmp/mesos -v "$(pwd)/mesos/log/mesos:/var/log/mesos" -v "$(pwd)/mesos/tmp/mesos:/var/tmp/mesos" -v /var/run/docker.sock:/var/run/docker.sock -v /sys:/sys -v /usr/bin/docker:/usr/local/bin/docker mesosphere/mesos-slave:1.7.0 --no-systemd_enable_support --no-hostname_lookup --ip=192.168.66.103
sh mesos-slave.sh

我部署下,看我分配的内存和cpu就知道为什么叫微服务了
message-thrift-python-service 部署
0.1cpu和128Mb内存足够了。

连接是hub.docker.com,上边说了内存太低了没办法启动那边多镜像。

点击json mode 修改,其实就是修改json文件

修改成画红色部分的内容,containerPort是应用内的端口,servicePort是marathon控制的端口(上一节统计过外部端口的数字)。

user-thrift-service 部署



user-edge-service 部署


跟上边一样修改端口
course-dubbo-service 部署



它不需要端口的映射,直接删除portMappings就可以了

zhugeaming/course-edge-service 部署

作者:IT人故事会
链接:https://www.jianshu.com/p/5645c89e6920
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1469/viewspace-2820998/ ,如需转载,请注明出处,否则将追究法律责任。