Skip to content

containerman17/ContainerOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ContainerOS prototype

The goal of the project is to provide as simple as possible interface for cluster deployments.

Instalation

  1. Install docker
curl -fsSL https://get.docker.com -o get-docker.sh && chmod +x get-docker.sh && ./get-docker.sh
  1. Create swarm cluster
docker swarm init
  1. Create caddy swarm overlay network
docker network create -d overlay --attachable caddy
  1. Create secret root_token containing root token
printf "dev" | docker secret create root_token -
  1. Create config .env.api_host containing your domain
printf "API_HOST=$(curl -4 ifconfig.co).nip.io\n" > .env.api_host
  1. Copy .env.example to .env and set S3 credentials

  2. Run installer

docker service rm containeros-system_api containeros-system_node-setup; docker pull quay.io/containeros/installer:latest && docker pull quay.io/containeros/api:latest && docker run --env-file .env --env-file .env.api_host -it --rm -v "/var/run/docker.sock:/var/run/docker.sock" quay.io/containeros/installer:latest
  1. Optional: tear down
docker service rm $(docker service ls -q)

Components

Cluster API

  • Accepts http requests and modifies swarm mode desired cluster state
  • Responds with container statuses
  • Streams logs
  • Works directly with docker API
  • Runs only on controller nodes
  • Manages users saving them in configs and secrets
  • Stateless except for log streaming

Install container

  • Starts router, API server, and docker registry and addon controllers

Node management container

  • Auth docker into registry

Registry proxy

  • Proxies requests to docker registry (thank you, capitain)
  • Gets credentials and user access rights from configs and secrets

Addon controlers

  • Manage databases and other software, defined in configs by API server
  • Auto-scales depending on load

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published