当前位置: 首页 > 面试题库 >

设置docker / figs Mesos环境

郎吉星
2023-03-14
问题内容

我正在尝试建立一个docker / fig
Mesos集群。我是无花果和Docker的新手。Docker有很多文档,但是我发现自己很努力地了解如何使用fig。

这是我目前的fig.yaml:

zookeeper:
  image: jplock/zookeeper
  ports: 
  - "49181:2181"
mesosMaster:
  image: mesosphere/mesos:0.19.1
  ports: 
    - "15050:5050"
  links: 
    - zookeeper:zk
  command: mesos-master --zk=zk --work_dir=/var/log --quorum=1
mesosSlave:
  image: mesosphere/mesos:0.19.1
  links: 
    - zookeeper:zk
  command: mesos-slave --master=zk

谢谢 !

编辑:

多亏了Mark O`Connor的帮助,我创建了一个基于docker的mesos实用设置(+ Storm,Chronos等)。

尽情享受,如果您觉得这有用-请贡献:https :
//github.com/yaronr/docker-mesos

PS。请+1马克的答案:)


问题答案:

您尚未指出遇到的错误。

这是您使用的图像的文档:

  • https://registry.hub.docker.com/u/mesosphere/mesos/

Mesos使用来自https://mesosphere.io/downloads/的Mesosphere软件包来基于Docker
。不启动Mesos,请使用mesos-master和mesos-slave Dockers。

我真正担心这些图像的是它们是不受信任的,并且没有即时可用的资源。

因此,我以中间层github为灵感重新创建了您的示例:

  • https://github.com/mesosphere/docker-containers

更新示例以包括chronos框架

├── build.sh
├── fig.yml
├── mesos
│   └── Dockerfile
├── mesos-chronos
│   └── Dockerfile
├── mesos-master
│   └── Dockerfile
└── mesos-slave
    └── Dockerfile

构建基础映像(只需执行一次)

./build.sh

运行fig启动每个服务的实例

$ fig up -d
Creating mesos_zk_1...
Creating mesos_master_1...
Creating mesos_slave_1...
Creating mesos_chronos_1...

关于无花果的一件事是您可以扩大奴隶的规模

$ fig scale slave=5
Starting mesos_slave_2...
Starting mesos_slave_3...
Starting mesos_slave_4...
Starting mesos_slave_5...

mesos主控制台应显示5个从属服务器正在运行

http://localhost:15050/#/slaves

chronos框架应该正在运行并准备启动任务

http://localhost:14400

zk:
  image: mesos
  command: /usr/share/zookeeper/bin/zkServer.sh start-foreground
master:
  build: mesos-master
  ports:
    - "15050:5050"
  links:
    - "zk:zookeeper"
slave:
  build: mesos-slave
  links:
    - "zk:zookeeper"
chronos:
  build: mesos-chronos
  ports:
    - "14400:4400"
  links:
    - "zk:zookeeper"

笔记:

  • 此示例仅需要一个Zookeeper实例

build.sh

docker build --rm=true --tag=mesos mesos

mesos / Dockerfile

FROM ubuntu:14.04
MAINTAINER Mark O'Connor <mark@myspotontheweb.com>

RUN echo "deb http://repos.mesosphere.io/ubuntu/ trusty main" > /etc/apt/sources.list.d/mesosphere.list
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv E56151BF
RUN apt-get -y update
RUN apt-get -y install mesos marathon chronos

mesos-master / Dockerfile

FROM mesos
MAINTAINER Mark O'Connor <mark@myspotontheweb.com>

EXPOSE 5050

CMD ["--zk=zk://zookeeper:2181/mesos", "--work_dir=/var/lib/mesos", "--quorum=1"]

ENTRYPOINT ["mesos-master"]

mesos-slave / Dockerfile

FROM mesos
MAINTAINER Mark O'Connor <mark@myspotontheweb.com>

CMD ["--master=zk://zookeeper:2181/mesos"]

ENTRYPOINT ["mesos-slave"]

mesos-chronos / Dockerfile

FROM mesos
MAINTAINER Mark O'Connor <mark@myspotontheweb.com>

RUN echo "zk://zookeeper:2181/mesos" > /etc/mesos/zk

EXPOSE 4400

CMD ["chronos"]

笔记:

  • 使用文件来配置“ chronos”命令行。


 类似资料:
  • 本文向大家介绍windows docker环境设置注意事项,包括了windows docker环境设置注意事项的使用技巧和注意事项,需要的朋友参考一下 windows docker环境设置 1、下载docker-install.exe安装VirtualBox、Git、Boot2Docker for Windows 2、设置环境变量,启动boot2docker Core Linux。 可以直接在Vi

  • 问题内容: 我正在尝试运行我的python文件,该文件首先读取中文字符串并打印。 这是我的Dockerfile 这是我的python文件: 然后我运行: 我得到的错误: 当我在本地运行它时,它工作正常。 问题答案: 在使用主管和gunicorn部署Django应用程序时遇到了同样的问题。 解决的问题是将以下行添加到我的主管配置文件中: 对于您的情况,请确保要打印的中文语言环境可用并已安装在Dock

  • 我最近读了很多关于Docker的书,我甚至试着在我的笔记本电脑上用Vagrant来运行它。但我仍然不清楚为什么,特别是如何向我的团队介绍它。只是我没有看到用例。 我知道您可以为web服务器和DB创建容器。所以大家可以说,嘿,伙计们,现在我们使用的是我创建的Custom-Tomcat-1和Custom-Mysql-1容器。到目前为止还很清楚。我遇到的问题是那些“数据容器”。 我仍然可以理解,我将拥有

  • 要执行道德黑客攻击,我们需要一个测试模拟环境,为了方便我们下载并安装Kali Linux操作系统,可以在Virtual Box中下载Kali Linux OS。以下是下载Virtual Box和Kali Linux的基本步骤。 第1步:下载Virtual Box 在第1步中,我们下载Virtual Box,因为Virtual Box可以在当前操作系统中创建虚拟机。Virtual Box就像一个完全

  • 问题内容: 我在Docker容器中设置了Jenkins,并且尝试通过该服务器访问我的私有Bitbucket存储库。我需要将SSH密钥复制到该容器中,以便Bitbucket能够识别它,然后让Jenkins服务器访问该存储库。 我的docker-compose.yml文件中包含以下内容: 但是,从字面上给出而不是存储在内部的值。我听说在Dockerfile中执行此操作的问题是它仍然可以在将要推送的映像

  • 我在yaml文件中定义了一个环境变量JAVA_TOOL_OPTIONS。当我使用命令“docker compose-f up”启动容器时,我会出现以下错误: 拾取JAVA_TOOL_OPTIONS:-agentlib: jdwp=传输=dt_socket, address=8010, server=y,挂起=n监听传输dt_socketat address: 8010拾取JAVA_TOOL_OPT