Marathon is a production-proven Apache Mesos framework for container orchestration. DC/OS is the easiest way to start using Marathon.
Marathon provides a https://mesosphere.github.io/marathon/docs/rest-api.html for starting, stopping, and scaling applications. Marathon is written in Scala and can run in highly-available mode by running multiple copies. The state of running tasks gets stored in the Mesos state abstraction.
Marathon is a meta framework: you can start other Mesos frameworks such as Chronos or Storm with it to ensure they survive machine failures. It can launch anything that can be launched in a standard shell. In fact, you can even start other Marathon instances via Marathon.
Since Marathon version 0.7.0 and Mesos 0.20.0, you can https://mesosphere.github.io/marathon/docs/native-docker.html easily with native support.
/metrics in JSON format or push them to graphite/statsd/datadog.Marathon documentation is available on the http://mesosphere.github.io/marathon/.
Documentation for installing and configuring the full Mesosphere stack including Mesos and Marathon is available on the Mesosphere website.
We heartily welcome external contributions to Marathon's documentation. Documentation should be committed to the master branch and published to our GitHub pages site using the instructions in https://github.com/mesosphere/marathon/tree/master/docs.
Marathon has the following compile-time dependencies:
For run-time, Marathon has the following dependencies:
Getting started with DC/OS
The by far easiest way to get Marathon running is to use DC/OS. Marathon is pre-bundled into DC/OS.
Install Mesos
Marathon requires libmesos, a shared object library, that contains JNI bindings for Marathon to talk to the Mesos master. libmesos comes as part of the Apache Mesos installation. There are two options for installing Apache Mesos.
Installing Mesos from prepackaged releases
Instructions on how to install prepackaged releases of Mesos are available https://mesosphere.github.io/marathon/docs/.
Building Mesos from source
NOTE: Choose this option only if building Marathon from source, else there might be version incompatibility between pre-packaged releases of Marathon and Mesos built from source.
You can find the instructions for compiling Mesos from source in the Apache Mesos getting started docs. If you want Mesos to install libraries and executables in a non-default location use the --prefix option during configuration as follows:
console./configure --prefix=<path to Mesos installation>
The make install will install libmesos (libmesos.so on Linux and libmesos.dylib on Mac OS X) in the install directory.
Install Marathon
Instructions on how to install prepackaged releases are available https://mesosphere.github.io/marathon/docs/. Alternatively, you can build Marathon from source.
Building from Source
To build Marathon from source, check out this repo and use sbt to build a JAR:
git clone https://github.com/mesosphere/marathon.git cd marathon sbt assembly
Run ./bin/build-distribution to package Marathon as an
executable JAR
(optional).
Mesos local mode allows you to run Marathon without launching a full Mesos
cluster. It is meant for experimentation and not recommended for production
use. Note that you still need to run ZooKeeper for storing state. The following
command launches Marathon on Mesos in local mode. Point your web browser to
http://localhost:8080 to see the Marathon UI.
./bin/start --master local --zk zk://localhost:2181/marathon
For more information on how to run Marathon in production and configuration options, see https://mesosphere.github.io/marathon/docs/.
See https://mesosphere.github.io/marathon/docs/developing-vm.html on how to run Marathon locally inside a virtual machine.
Note: Currently the Docker container fails due to strange behavior from the latest Mesos version. There will be an error about work_dir that is still unresolved, much like this:
Failed to start a local cluster while loading agent flags from the environment: Flag 'work_dir' is required, but it was not provided
Build it:
docker build -t marathon-head .
A running zookeeper instance is required, if there isn't one already available, there is a docker image available for this:
docker run --name some-zookeeper --restart always -d zookeeper
Run it with zookeeper container:
docker run --link some-zookeeper:zookeeper marathon-head --master local --zk zk://zookeeper:2181/marathon
Or run it without zookeeper container:
docker run marathon-head --master local --zk zk://localhost:2181/marathon
If you want to inspect the contents of the Docker container:
docker run -it --entrypoint=/bin/bash marathon-head -s
To develop on the web UI look into the instructions of the https://github.com/mesosphere/marathon-ui repository.
https://github.com/shoenig/marathonctl A handy CLI tool for controlling Marathon
Ruby gem and command line client
Running Chronos with the Ruby Marathon Client:
marathon -M [***] start -i chronos -u [***] \ -C "./chronos/bin/demo ./chronos/config/nomail.yml \ ./chronos/target/chronos-1.0-SNAPSHOT.jar" -c 1.0 -m 1024
https://github.com/eBayClassifiedsGroup/marathon_deploy alternative command line tool to deploy using json or yaml files with ENV macros.
https://github.com/guidewire/marathon-client, developed at Guidewire
https://github.com/mohitsoni/marathon-client by Mohit Soni
https://github.com/holidaycheck/marathon-maven-plugin, developed at HolidayCheck
https://github.com/thefactory/marathon-python, developed at The Factory
https://github.com/Wizcorp/marathon-client.py, developed at Wizcorp
https://github.com/gambol99/go-marathon by Rohith Jayawardene
https://github.com/jbdalido/gomarathon by Jean-Baptiste Dalido
https://github.com/silas/node-mesos by Silas Sewell
https://github.com/codemomentum/marathonclj by Halit Olali
Across all installations Marathon is managing applications on more than 100,000 nodes world-wide. These are some of the companies using it:
Not in the list? Open a pull request and add yourself!
Have you found an issue? Feel free to report it using our https://github.com/mesosphere/marathon/issues page.
In order to speed up response times, we ask you to provide as much
information on how to reproduce the problem as possible. If the issue is related
in any way to the web ui, we kindly ask you to use the gui label.
If you have questions, please post on the
Marathon Framework Group
email list. You can find Marathon support in the #marathon channel, and Mesos
support in the #mesos channel, on freenode (IRC). The team at
Mesosphere is also happy to answer any questions.
If you'd like to take part in design research and test new features in Marathon before they're released, please add your name to our UX Research list.
Marathon was created by https://github.com/guenter and https://github.com/florianleibert and continues to be developed by the team at Mesosphere and by many contributors from the community.
YourKit, LLC
!YourKit, LLC
YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务