Har du brug for flere services for at køre din app? Start en stack!


Nogle gange er det altså nødvendigt med flere instanser sammen i din docker-compose.
Det er muligt at starte noget der hedder en stack, hvor du sætter flere services sammen. Lad os sige du skal bruge en database til dit projekt. Så er det smart man kan sætte det hele op og forbinde til den via stack’en.

Et eksempel på dette er min Chevereto stack.
Jeg hoster selv en side hvor jeg kan uploade billeder, skulle jeg få brug for at overføre dem mellem maskiner der står langt fra hinanden.

Selve stack.yml filen ser sådan her ud:

version: ‘3.1’

services:

db:
image: mysql
command: –default-authentication-plugin=mysql_native_password
restart: always
environment:
MYSQL_ROOT_PASSWORD: ditrootpasswordher
volumes:
– “/path/til/data/chev/db:/etc/mysql/conf.d/config-file.cnf”
– “/path/til/data/chev/db/data:/var/lib/mysql:rw”

adminer:
image: adminer
restart: always
ports:
– 8080:8080

chevereto:
image: ghcr.io/linuxserver/chevereto
container_name: chevereto
environment:
– PUID=1000
– PGID=1000
– TZ=Europe/Copenhagen
volumes:
– /path/til/data/chev/config:/config
– /path/til/data/chev/data:/data
ports:
– 8181:80
restart: unless-stopped

Flg gemmes som stack.yml og køres med kommandoen: docker-compose -f stack.yml up -d
Så har du en chevereto instans kørende med tilhørende database og adminer.
Husk at rette path/til/data og MYSQL_ROOT_PASSWORD samt portene så de passer ind i dit eksisterende system.

Categories: