Editing Host:Dockerserver

From Chaosdorf Wiki
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 2: Line 2:
|name=dockerserver
|name=dockerserver
|description=Docker-Instanzen
|description=Docker-Instanzen
|os=Debian 12
|os=Debian 9.7
|location=Host:Helios
|location=Host:Helios
|purpose=Container hosten
|purpose=Container hosten
|disk=250GB
|disk=250GB
|ram=16GiB
|ram=4GiB
|admin_toolkit=Yes
|admin_toolkit=Yes
|ssh_pam=Yes
|ssh_pam=Yes
Line 12: Line 12:
|ownership=virtual
|ownership=virtual
|use=ask
|use=ask
|admins=magluz, marudor, nomaster, ytvwld
|admins=nomaster, ytvwld, marudor
|netbox_url=https://netbox.chaosdorf.space/virtualization/virtual-machines/1/
|netbox_url=https://netbox.chaosdorf.space/virtualization/virtual-machines/1/
}}
}}
== Wie bekomme ich meine Software da drauf? ==
== Prittstift aktualisieren ==


Schreib ein docker-compose-File und mach einen Pull Request in https://github.com/chaosdorf/docker-stacks auf.
    docker pull telegnom/labello
Beachte bitte auch [[Software#HowTo]].
    systemctl stop prittstift.service
(Sollte deine Anwendung komplexen Netzwerk-Foo machen und nicht einfach nur ein TCP-Client bzw. -Server sein, gehen auch Deployments außerhalb von docker swarm. Sprich dazu (und allgemein bei Fragen) eine der Personen aus der Infobox an.)
    docker rm prittstift
    docker create --name prittstift --env-file prittstift.env -p 8001:8000 -v prittstift:/opt/labello/fonts telegnom/labello download_font
    systemctl start prittstift.service


== Cheatsheet für Admins ==
== Labello aktualisieren ==


=== Dienste aktualisieren ===
    docker pull chaosdorf/labello
    systemctl stop labello.service
    docker rm labello
    docker create --name=labello -p 127.0.0.1:8000:8000 --env-file=labello.env chaosdorf/labello
    systemctl start labello.service


cd docker-stacks
== mpd2mqtt aktualisieren ==
git pull --ff
 
./deploy-stacks.sh
    docker pull chaosdorf/mpd-mqtt-gateway
# ./deploy-stacks.sh mete aktualisiert z.B. nur mete
    systemctl stop mpd2mqtt.service
    docker rm mpd2mqtt
    docker create --name mpd2mqtt --dns=172.22.26.9 --env-file=mpd2mqtt.env chaosdorf/mpd-mqtt-gateway
    systemctl start mpd2mqtt.service
 
== dashpi aktualisieren ==
 
    docker pull chaosdorf/dashpi:latest
    systemctl stop dashpi.service
    docker rm dashpi
    docker create --name dashpi -p 3030:3030 --dns=172.22.26.9 --env-file=dashpi.env --mount type=bind,source=(pwd)/dashpi-secrets,destination=/run/secrets,read-only=true chaosdorf/dashpi:latest
    systemctl start dashpi.service
 
== shairplay aktualisieren ==
 
    docker pull chaosdorf/shairplay
    systemctl stop shairplay.service
    docker rm shairplay
    docker create --name shairplay --dns=172.22.26.9 --network host --env-file shairplay.env chaosdorf/shairplay
    systemctl start shairplay.service
 
== pulseweb aktualisieren ==
 
  docker pull chaosdorf/pawebcontrol
  systemctl stop pulseweb.service
  docker rm pulseweb
  docker create --name pulseweb --dns 172.22.26.9 -p 8080:8080 --env-file pulseweb.env chaosdorf/pawebcontrol
  systemctl start pulseweb.service
 
== ympd aktualisieren ==
 
  docker pull chaosdorf/ympd
  systemctl stop ympd.service
  docker rm ympd
  docker create --name ympd --dns 172.22.26.9 -p 8082:8080 chaosdorf/ympd
  systemctl start ympd.service
 
== fftalks aktualisieren ==
 
  docker pull chaosdorf/freitagsfoo-web
  systemctl stop fftalks.service
  docker rm fftalks
  docker create --name fftalks --env-file fftalks.env -p 4000:5000 -v (pwd)/fftalks.cfg:/etc/freitagsfoo-web.cfg chaosdorf/freitagsfoo-web
  systemctl start fftalks.service
 
== telemete aktualisieren ==
 
  docker pull ytvwld/telemete # vorher bauen und pushen
  systemctl stop telemete.service
  docker rm telemete
  docker create --name telemete --env-file telemete.env -v (pwd)/telemete-data:/usr/src/data ytvwld/telemete
  systemctl start telemete.service
 
== mete ==
 
Vorher sollten auf dem Dockerserver die folgenden Images geupdated werden:
 
  docker pull chaosdorf/mete
  docker pull postgres:10-alpine
  docker pull nomaster/postgres-backup
 
(Bin ich doof oder gibt es kein build --pull in docker-compose?)
 
Mete läuft über docker-compose, allerdings nicht vom Dockerserver aus. Die folgenden Befehle müssen also '''lokal''' im Verzeichnis mit dem Compose-File ausgeführt werden (und setzen funktionierende Tools voraus):
 
  ssh -L localhost:5732:localhost:2375 root@dockerserver -N &
  env SENTRY_DSN=blargh docker-compose -H tcp://localhost:5732 up --no-start
  <warten>
  fg
  ^C
  systemctl -H root@dockerserver start mete.target
 
== chaospizza ==
 
Vorher muss auf dem Dockerserver die Anwendung und die Abhängigkeiten geupdated werden:
 
  docker pull chaosdorf/chaospizza
  docker pull postgres:9.6
  docker pull nomaster/postgres-backup
 
Chaospizza läuft über docker-compose, allerdings nicht vom Dockerserver aus. Die folgenden Befehle müssen also '''lokal''' im Verzeichnis mit dem docker-compose-File ausgeführt werden (und setzen funktionierende Tools voraus):
 
  ssh -L localhost:5732:localhost:2375 root@dockerserver -N &
  env SENTRY_DSN=foo docker-compose -H tcp://localhost:5732 -f chaospizza.yml -p chaospizza up --no-start
  <warten>
  fg
  ^C
  systemctl -H root@dockerserver start chaospizza.target
Please note that all contributions to Chaosdorf Wiki are considered to be released under the Attribution 3.0 Unported (see Chaosdorf Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)