VPS Setup: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Silson (Diskussion | Beiträge) |
Silson (Diskussion | Beiträge) (Matrix eingefügt) |
||
Zeile 146: | Zeile 146: | ||
|wordpress_sql (mariadb:10.5) | |wordpress_sql (mariadb:10.5) | ||
|un-hack-bar, unhb.de, www.un-hack-bar.de, www.unhb.de, blog2.un-hack-bar.de | |un-hack-bar, unhb.de, www.un-hack-bar.de, www.unhb.de, blog2.un-hack-bar.de | ||
− | nginx_net | + | |nginx_net |
wordpress_net | wordpress_net | ||
|(-) | |(-) | ||
| | | | ||
|Unser Blog.... Admin Zugang im Kesspass. DB User+Kennwort in den Docker-Compose file. | |Unser Blog.... Admin Zugang im Kesspass. DB User+Kennwort in den Docker-Compose file. | ||
− | |} | + | |- |
+ | |Matrix | ||
+ | |matrixdotorg/synapse:latest | ||
+ | | | ||
+ | matrix_sql (postgres:10-alpine) | ||
+ | |||
+ | matrix_telegram (dock.mau.dev/tulir/mautrix-telegram:latest) | ||
+ | |||
+ | matrix_pingbot (dock.mau.dev/maubot/maubot:latest) | ||
+ | |||
+ | |matrix.un-hack-bar, matrix.unhb.de, | ||
+ | |nginx_net | ||
+ | matrix_net | ||
+ | |443, 8448 | ||
+ | | Port 443 läuft über den reverse proxy, 8448 (für Matrix Federation) direkt aus dem Container, LE Zertifikate via mount-bind aus dem Proxy | ||
+ | |Der Matrix Server und 2 weitere Dienste (Telegram-Bridge und Pingpot). Details dazu auf der jeweiligen Wikiseite. | ||
+ | ||} | ||
=neuromancer (aka Contabo Server 2)= | =neuromancer (aka Contabo Server 2)= |
Version vom 28. April 2020, 06:07 Uhr
Docker Setup
Allgemeines
Unter Docker Befehle gibt es eine Liste von nützlichen docker Befehlen (z.B. für debugging)
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:
- (bevorzugt)docker-compose.yml
- Starten des Containers: docker-compose -d up (-d für detatched, damit die Container auch weiterlaufen, wenn die Shell geschlossen wird)
- Stoppen des Containers: docker-compose down
- Inspizieren des Containers: docker-compose ps
- (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 | christopher/wiki | wiki_sql (mariadb) | wiki.un-hack-bar.de, wiki.unhb.de, wiki.unhackbar.de | nginx_net wiki_net | (-) | Eigens angepasstes Dockerfile, basierend auf Mediawiki. Wer das Ding anfasst wird automatisch für immer Admin davon. |
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 | (-) | portainer.un-hack-bar.de, portainer.unhb.de | (-) | (-) | Portainer zum verwalten der Docker-Container, aktuell nur für Server1 verfügbar | ||||||||||||||||||||||||||||||||||||||||||||||||||
jverein_sql | mariadb:10.3.5 | (-) | (-) | Mariadb-Datenbank für jVerein. Das Programm selbst ist lokal auf den Clients installiert, nur die DB wird geteilt. Zugriff per SSH. | ||||||||||||||||||||||||||||||||||||||||||||||||||||
nextcloud | nextcloud:stable | nextcloud_sql | cloud.unhb.de, cloud.un-hack-bar.de, cloud.unhackbar.de | nginx_net, nextcloud_net | (-) | Nextcloud Instanz für die Dateisyncronisation im Space. | ||||||||||||||||||||||||||||||||||||||||||||||||||
codimd | hackmdio/hackmd | codi_sql (postgres) | hackmd.un-hack-bar, hackmd.unhb.de | nginx_net
codimd_net |
(-) | Ein "Etherpad" mit Markup-Syntax und weitere möglichkeiten | ||||||||||||||||||||||||||||||||||||||||||||||||||
etherpad-lite | etherpad/etherpad | etherpad_sql (mariadb:latest) | pad.un-hack-bar, pad.unhb.de | nginx_net
etherpad_net |
(-) | Einfaches Etherpad. Admin Zugang steht im Keepass | ||||||||||||||||||||||||||||||||||||||||||||||||||
Wordpress | wordpress:latest | wordpress_sql (mariadb:10.5) | un-hack-bar, unhb.de, www.un-hack-bar.de, www.unhb.de, blog2.un-hack-bar.de | nginx_net
wordpress_net |
(-) | Unser Blog.... Admin Zugang im Kesspass. DB User+Kennwort in den Docker-Compose file. | ||||||||||||||||||||||||||||||||||||||||||||||||||
Matrix | matrixdotorg/synapse:latest |
matrix_sql (postgres:10-alpine) matrix_telegram (dock.mau.dev/tulir/mautrix-telegram:latest) matrix_pingbot (dock.mau.dev/maubot/maubot:latest) |
matrix.un-hack-bar, matrix.unhb.de, | nginx_net
matrix_net |
443, 8448 | Port 443 läuft über den reverse proxy, 8448 (für Matrix Federation) direkt aus dem Container, LE Zertifikate via mount-bind aus dem Proxy | Der Matrix Server und 2 weitere Dienste (Telegram-Bridge und Pingpot). Details dazu auf der jeweiligen Wikiseite. | }
neuromancer (aka Contabo Server 2)
neuromancer installas root: enable_ipv6 reboot adduser smash usermod -aG sudo,admin smash echo neuromancer.unhb.de > /etc/hostname
## 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 ## altered /etc/sudoers for ssh pubkey access (NOPASS Option) # # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL)NOPASSWD: ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d |