mesos-compose
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
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