VPS Setup

Aus Un-Hack-Bar
Zur Navigation springen Zur Suche springen

Docker Setup

Config-Files:

Es ist zu jedem Docker-Container ein Setup im Ordner /srv/docker-config/<container> abgelegt. Die Container werden auf zwei verschiedene Arten definiert:

  1. (bevorzugt)docker-compose.yml
    1. Starten des Containers: docker-compose -d up (-d für detatched, damit die Container auch weiterlaufen, wenn die Shell geschlossen wird)
    2. Stoppen des Containers: docker-compose down
    3. Inspizieren des Containers: docker-compose ps
  2. (legacy) Drei Files: ./create.sh, ./replace.sh und env_file. Diese Files definieren die Container und können zum neustarten / ersetzen / verändern verwendet werden

Volumes:

Gemountete Volumes sollen unter /srv/docker-volumes/<container>/<volume-wie-im-container> abgelegt werden.

Contabo Server 1

Container-Name Image Sub-Container Web-Adresse
Networks Externe Ports Besonderheiten Erläuterung
nginx jwilder/nginx-proxy:alpine (-) (-) nginx_net 80, 443   Reverse Proxy. Schleift Anfragen zum richtigen Container durch.
nginx-proxy-letsencrypt jrcs/letsencrypt-nginx-proxy-companion:stable (-) (-) nginx_net (-)   Holt letsencrypt Zertifikate für alle Container ab.
watchtower containrrr/watchtower (-) (-) (-) (-)   Überwacht laufende Container. Wenn es eine neue Version gibt, wird der Container gestoppt, die neue Version gepullt, der Container gelöscht und neu gestartet.
gitea gitea/gitea:latest (-) git.un-hack-bar.de, git.unhb.de, git.unhackbar.de nginx_net 22   Git Server
wiki mediawiki:stable wiki_sql (mariadb) wiki.un-hack-bar.de, wiki.unhb.de, wiki.unhackbar.de nginx_net wiki_net (-)   Mediawiki Server
spaceapi sebp/lighttpd:latest (-) status.un-hack-bar.de

status.unhb.de

status.unhackbar.de

keinanschluss.un-hack-bar.de

keinanschluss.unhb.de

keinanschluss.unhackbar.de

nginx_net (-) Hier wird ein gesonderter Benutzer "keinanschluss" verwendet. Ein Raspi im Space verbindet sich mit SSH. Deswegen ist das /home von "keinanschluss" auf das Volume glelegt und das Volume beherbergt einen SSH-Key für den Raspi. Macht irgendwas für die Spaceapi. (Bitte gern ergänzen, wenn wer weiß was genau)
portainer portainer/portainer:latest (-) TO BE MIGRATED        


neuromancer (aka Contabo Server 2)

  • IP: 213.136.84.38
  • IPv6: 2a02:c207:3004:7659::1
  • VNC: 5.189.158.206:63083
  • Host system: 3306
  • OS: Ubuntu 19.10 (64 Bit)


Container
Name
Image Sub
Container
Web
Adresse
Networks Externe
Ports
Besonderheiten Erläuterung
minecraft itzg/minecraft-server http://mc.unhb.de:8123
  • 8123 (dynmap)
  • 9225 (Prometheus)
  • 25565 (Minecraft)
Admin: ryze

neuromancer install

as root:

enable_ipv6
reboot
adduser smash
usermod -aG sudo,admin smash
echo neuromancer.unhb.de > /etc/hostname


as smash:

## install docker.ce

sudo apt-get update
sudo apt-get install \
   apt-transport-https \
   ca-certificates \
   curl \
   gnupg-agent \
   software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo apt-key fingerprint 0EBFCD88
sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable test" ## appended test as a workaround - currently no containerd.io version available in stable for ubuntu eoan!
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

## install docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

## create mc docker container
sudo mkdir -p /srv/docker-volumes/

## install additional tools
sudo apt install htop dstat net-tools
## initial docker-compose.yml for minecraft
version: '3.7' 

services:
 mc:
   image: itzg/minecraft-server
   container_name: minecraft
   restart: always
   environment:
     EULA: "true"
     TYPE: SPIGOT
     MAX_MEMORY: 4G
   command: --noconsole
   ports:
     - 25565:25565
     - 8123:8123
     - 9225:9225
   volumes:
     - /srv/docker-volumes/minecraft:/data