serai/deploy/docker-compose.yml
vrx00 f9310a9968
Cluster Orchestration with Kubernetes (#121)
* add file

* builds + caching fixed

* bitcoin orchestration

* remove default entrypoint

* eth image and cleanup

* working monero

* remove signature file

* cleanup on aisle eth

* cleanup on aisle btc

* eth working

* remove docker ignore

* remove bitcoin image readme

* fix serai builds

* serai clusters

* added readme for docker

* formatting

* share the image

* newlines at EOF

* add multi profile example

* coin order

* coin order

* profile order

* fix grammar

* fix whitespace

* reduce trusted signature set, require at least 3 signatures.

* remove echo

* update comment to ref trusted keys

* comment fix

* use 16 keys, check for laanwj, name compose

* don't use bash

* monero fingerprints & eth fixes

* eth fixes

* remove extra eth keys

* kubernetes deployment implemented with helm charts

* deleted helmignores & added new lines at the end of the file

* deleted duplications & delete unnecessary comments & deactivated service accounts

* deleted generators files

* added a new line to monero/values.yaml

* deleted support for old kubernetes version - ingress.yaml

* added new like to serai/values.yaml

* serai's port name changed

* serai's port name changed

* release name limit was changed to 253

* README.md updated

* fixed Makefile

* deleted platform dependant instructions

* deleted appVersion from .yamls

* added -i parameter for deleting process

* added \ for Makefile

Co-authored-by: TheArchitect108 <75815740+TheArchitect108@users.noreply.github.com>
Co-authored-by: TheArchitect <TheArchitect108@protonmail.com>
2022-10-11 05:27:03 -05:00

168 lines
3.3 KiB
YAML

version: "3.9"
name: serai-dev
# ------------------------------------------------------------
# Services
# ------------------------------------------------------------
# Profiles:
# base - single node, unidentified
# coins - node clients for coins only (BTC, ETH, XMR)
# cluster-sm - Alice, Bob, Charlie
# cluster-coins-sm - cluster-sm with coins
# cluster-lg - Alice, Bob, Charlie, Dave, Eve, Ferdie
# cluster-coins-lg - cluster-lg with coins
# monero - full node monero only
# bitcoin - full node bitcoin only
# ethereum - full node ethereum only
# Example: docker compose --profile bitcoin up
volumes:
serai-base:
serai-alice:
serai-bob:
serai-charlie:
serai-dave:
serai-eve:
serai-ferdie:
services:
_serai:
&serai_defaults
restart: unless-stopped
image: serai:dev
profiles:
- _
build:
context: ../
dockerfile: ./deploy/serai/Dockerfile
args:
TAG: serai
entrypoint: /scripts/entry-dev.sh
volumes:
- "./serai/scripts:/scripts"
serai-base:
<<: *serai_defaults
hostname: serai-base
profiles:
- base
environment:
CHAIN: dev
NAME: base
serai-alice:
<<: *serai_defaults
hostname: serai-alice
profiles:
- alice
- cluster-sm
- cluster-coins-sm
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Alice
VALIDATOR: true
serai-bob:
<<: *serai_defaults
hostname: serai-bob
profiles:
- bob
- cluster-sm
- cluster-coins-sm
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Bob
serai-charlie:
<<: *serai_defaults
hostname: serai-charlie
profiles:
- charlie
- cluster-sm
- cluster-coins-sm
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Charlie
serai-dave:
<<: *serai_defaults
hostname: serai-dave
profiles:
- dave
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Dave
serai-eve:
<<: *serai_defaults
hostname: serai-eve
profiles:
- eve
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Eve
serai-ferdie:
<<: *serai_defaults
hostname: serai-ferdie
profiles:
- ferdie
- cluster-lg
- cluster-coins-lg
environment:
CHAIN: dev
NAME: Ferdie
# Processor Services
# Coin Services
bitcoin:
profiles:
- single-coins
- cluster-coins-sm
- cluster-coins-lg
- coins
- bitcoin
build:
context: ./coins/bitcoin/
restart: unless-stopped
volumes:
- "./coins/bitcoin/scripts:/scripts"
entrypoint: /scripts/entry-dev.sh
ethereum:
profiles:
- single-coins
- cluster-coins-sm
- cluster-coins-lg
- coins
- ethereum
build:
context: ./coins/ethereum/
restart: unless-stopped
volumes:
- "./coins/ethereum/scripts:/scripts"
entrypoint: /scripts/entry-dev.sh
monero:
profiles:
- single-coins
- cluster-coins-sm
- cluster-coins-lg
- coins
- monero
build:
context: ./coins/monero/
restart: unless-stopped
volumes:
- "./coins/monero/scripts:/scripts"
entrypoint: /scripts/entry-dev.sh