Mesos Framework to use docker-compose files.

mesos-compose

Chat Docs

Mesos Framework to use docker-compose files.

Requirements

  • Apache Mesos min 1.6.0
  • Mesos with SSL and Authentication is optional
  • Redis Database
  • Docker Compose Spec 3.9

Example

The compose file:

version: '3.9'
services:
  app:
    image: alpine:latest
    command: ["sleep","10"]
    restart: always
    volumes:
      - /tmp:/tmp
    environment:
      - MYSQL_HOST=test
    labels:
      biz.aventer.mesos_compose.container_type: "DOCKER"
    network_mode: "BRIDGE"
    network:
      - default
    deploy:
      resources:
        limits:
          cpus: "0.001"
          memory: "50"

networks:
  default:
    external: true
    name: weave

Push these compose file to the framework. Every docker-compose need to have a own project name.

curl -X PUT http://localhost:10000/v0/compose/<PROJECTNAME> --data-binary @docs/example/docker-compose.yml

image_2021-11-08-11-33-09

image_2021-11-08-11-33-47

To scale the service, just execute the same call again. To update a already existing docker-compose project, call:

curl -X PUT http://localhost:10000/v0/compose/<PROJECTNAME>/update --data-binary @docs/example/docker-compose.yml
Owner
AVENTER UG (haftungsbeschränkt)
your provider for microservice and legacy solutions
AVENTER UG (haftungsbeschränkt)
Similar Resources

Katenary - Convert docker-compose to a configurable helm chart

Katenary - Convert docker-compose to a configurable helm chart

Katenary is a tool to help transforming docker-compose files to a working Helm C

Dec 23, 2022

ecsk is a CLI tool to interactively use frequently used functions of docker command in Amazon ECS. (docker run, exec, cp, logs, stop)

ecsk is a CLI tool to interactively use frequently used functions of docker command in Amazon ECS. (docker run, exec, cp, logs, stop)

English / 日本語 ecsk ECS + Task = ecsk 😆 ecsk is a CLI tool to interactively use frequently used functions of docker command in Amazon ECS. (docker run

Dec 13, 2022

GitHub Action: Compose multiple (conditional) checks into a single check based on file paths in a pull request

GitHub Action: Compose multiple (conditional) checks into a single check based on file paths in a pull request

GitHub Action: Composite Example Usage --- name: All Checks on: pull_request: branches: - main jobs: meta: runs-on: - ubuntu-20.

Dec 29, 2022

Bubbleboxer - compose bubbles into boxes

bubbleboxer 🥊 - compose bubbles into boxes 📦 A way to compose multiple bubbles

Dec 20, 2022

Template Compose - Continues Delivery

Template Compose - Continues Delivery

Feb 4, 2022

Explore Docker registries and manipulate Docker images!

Explore Docker registries and manipulate Docker images!

L/S tags Utility and API to manipulate (analyze, synchronize and aggregate) images across different Docker registries. Example invocation $ lstags alp

Nov 25, 2022

Docker-based remote code runner / 基于 Docker 的远程代码运行器

Docker-based remote code runner / 基于 Docker 的远程代码运行器

Docker-based remote code runner / 基于 Docker 的远程代码运行器

Nov 9, 2022

Go-http-server-docker - Simple sample server using docker and go

go-http-server-docker Simple sample webserver using docker and go.

Jan 8, 2022

Docker-hub-rate-limit - Show pulling rate status of Docker-hub

Docker-Hub Pull Rate Status This tool shows current status of docker hub pull ra

Jan 28, 2022
Comments
  • UPDATE: executor support.

    UPDATE: executor support.

    EXTEND: executor support ADD: support of the command executer ADD: environment variables to executer command ADD: capability support by "cap_add" UPDATE: increase performance of the compose framework

  • Missing default value for disk resource

    Missing default value for disk resource

    Missing required fields: accept.operations[0].launch.task_infos[0].resources[2].scalar.valuetime="2022-04-22T22:23:27Z"

    								{
    									"name": "disk",
    									"type": "SCALAR",
    									"scalar": {
    										"value": 0
    									},
    									"reservations": null
    								},
    

    If the task already exists in the redis db, the new value "disk" is set to 0.

  • Executor does not Scheduled

    Executor does not Scheduled

    'Executor '282d5709-7f10-b470-542e-fc5467cde711' uses less CPUs (None) than the minimum required (0.01)'

           		"launch_group": {
    					"executor": {
    						"type": "CUSTOM",
    						"executor_id": {
    							"value": "282d5709-7f10-b470-542e-fc5467cde711"
    						},
    						"framework_id": {
    							"value": "95761e66-1a99-45aa-a1d7-1c351b49d4c5-0001"
    						},
    						"command": {
    							"uris": [
    								{
    									"value": "http://localhost:8888/mesos-mainframe-executor",
    									"executable": true,
    									"extract": false,
    									"cache": false,
    									"output_file": "mesos-mainframe-executor"
    								}
    							],
    							"value": "./mesos-mainframe-executor"
    						},
    						"container": {
    							"type": "MESOS",
    							"volumes": null,
    							"Mesos": null,
    							"network_infos": null
    						},
    						"resources": null,
    
  • Dev

    Dev

    • Add Redis Authentication Support
    • Change DB items framework and framework_config to be saved with the frameworkName as prefix.
    • The default prefix of hostname and tasks are the FrameworkName.
    • Optimize framework suppress
    • Add constraint "hostname eq" to accept only offers with the given hostname.
    • Check if the random generated port is already in use at the given agent.
    • Change TaskID format to be more speakable.
    • IMPORTANT!!! Change the API URL's.
    • Add force pull image
    • Add executor label to define custom mesos executor.
Mutagen Compose is a modified version of Docker Compose that offers automated integration with Mutagen.

Mutagen Compose Mutagen Compose is a (minimally) modified version of Docker Compose that offers automated integration with Mutagen. This allows you to

Dec 22, 2022
Tool to convert docker-compose files to set of simple docker commands

docker-decompose Tool to convert docker-compose files to set of simple docker commands. Install Use go get to install the latest version of the librar

Apr 12, 2022
Easily run your Compose application to the cloud with compose-cli

This CLI tool makes it easy to run Docker containers and Docker Compose applications in the cloud using either Amazon Elastic Container Service (ECS) or Microsoft Azure Container Instances (ACI) using the Docker commands you already know.

Jan 8, 2023
Hassle-free minimal CI/CD for git repositories with docker or docker-compose projects.
Hassle-free minimal CI/CD for git repositories with docker or docker-compose projects.

GIT-PIPE Hassle-free minimal CI/CD for git repos for docker-based projects. Features: zero configuration for repos by default automatic encrypted back

Sep 23, 2022
Dotnet-appsettings-env - Convert .NET appsettings.json file to Kubernetes, Docker and Docker-Compose environment variables

dotnet-appsettings-env Convert .NET appsettings.json file to Kubernetes, Docker

Dec 30, 2022
Dotnet-appsettings-env - Convert .NET appsettings.json file to Kubernetes, Docker and Docker-Compose environment variables

dotnet-appsettings-env Convert .NET appsettings.json file to Kubernetes, Docker

Feb 16, 2022
Docker-compose files for running full Storj network locally

docker-compose based Storj environment storj-up is a swiss-army tool to create / customize Storj clusters with the help of docker-compose (not just st

Nov 16, 2022
Sample multi docker compose environment setup

Instructions This is a demonstration of a Multi Docker Compose. The purpose of this repositoy is ongoing research on "Docker compose" architecture des

Oct 21, 2022
Example used to try a compose application with Docker Dev Environments

compose-dev-env Example used to try a Compose application with Docker Dev Environments. This example is based on the nginx-golang-mysql sample of awes

Dec 29, 2022
Execute multiple shell commands like Docker-Compose

parx parx is a simple tool to run multiple commands in parallel while having the output structured like Docker Compose does that. This is useful when

Aug 15, 2022