topic:gendoc
Table of Contents
Gendoc - Generic Docker Compose Stack apps (DCS)
gendoc is CatchMedia specific set of conventions and aliases to manage Docker Compose Stack applications (DCS).
See also: Docker Apps with Persistency - DCS+keepalived+haproxy
We try to use gendoc/dcs instead of k8 because k8-based apps are notoriously harder to setup, manage and backup. The complexity price for HA and scalability just does not pay off for most applications we use.
Conventions
- aliases entity is installed
- DCS app has /opt/DCS_NAME/docker-compose.yml file
- The DCS might require dedicated IP using macvlan. If dedicated outbound source IP is needed, then Firewall→NAT→Outbound tuning on FW might be necessary
- docker-compose.yml might have additional custom fields:
x-ska: start_on_boot: "no" on_demand_port: 25565
- for DCS with persistency, /opt/DCS_NAME should be separate LVM volume, mounted on boot. Same for production-grade apps, to protect from disk full situations.
- systemd service gendoc starts DCS apps with start_on_boot=yes
Aliases
Aliases are actually scripts that sit in /opt/aliases/bin (should be in PATH). They must be run from the home directory of DCS - /opt/DCS_NAME, for example /opt/pamail
dcup- start DCS appdcdown- stop DCS appdclog- see runtime logdcch- try to run bash or sh inside of the container (if container has shell in it). If you must get in as root, use this cmd (example for mysql_padb_a1):docker exec -u 0 -it mysql_padb_a1 /bin/bash -ldcii- see information on the DCSdcmy- for mysql containers - connect to mysql server using mysql CLIdcmyv- for mysql containers - connect to mysql server using mysql CLI over Virtual IPdcrc- for redis containers - connect to redis server using redis CLIdocps- See list of DCS running: docps
topic/gendoc.txt · Last modified: 2024/12/31 08:55 by 127.0.0.1
