Bearbeiten von „VPS Setup“

Zur Navigation springen Zur Suche springen

Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden. Ein eigenes Benutzerkonto hat eine ganze Reihe von Vorteilen.

Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und speichere dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.

Aktuelle Version Dein Text
Zeile 1: Zeile 1:
 
==Docker Setup==
 
==Docker Setup==
=== Allgemeines ===
 
Unter [[Docker Befehle]] gibt es eine Liste von nützlichen docker Befehlen (z.B. für debugging)
 
 
 
===Config-Files:===
 
===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:
 
Es ist zu jedem Docker-Container ein Setup im Ordner /srv/docker-config/<container> abgelegt. Die Container werden auf zwei verschiedene Arten definiert:
Zeile 65: Zeile 62:
 
|-
 
|-
 
|wiki
 
|wiki
|christopher/wiki
+
|mediawiki:stable
 
|wiki_sql (mariadb)
 
|wiki_sql (mariadb)
 
|wiki.un-hack-bar.de, wiki.unhb.de, wiki.unhackbar.de
 
|wiki.un-hack-bar.de, wiki.unhb.de, wiki.unhackbar.de
 
|nginx_net wiki_net
 
|nginx_net wiki_net
 
|(-)
 
|(-)
|Eigens angepasstes Dockerfile, basierend auf Mediawiki. Wer das Ding anfasst wird automatisch für immer Admin davon.<br />
+
| 
 
|Mediawiki Server
 
|Mediawiki Server
 
|-
 
|-
Zeile 95: Zeile 92:
 
|portainer/portainer:latest
 
|portainer/portainer:latest
 
|(-)
 
|(-)
|portainer.un-hack-bar.de, portainer.unhb.de
+
|TO BE MIGRATED
|(-)
 
|(-)
 
|
 
|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.
 
|-
 
|Poste.io
 
|analogic/poste.io
 
| (-)
 
|mail.un-hack-bar, mail.unhb.de,
 
|nginx_net
 
|25, 110, 143, 465, 587, 993, 995, 4190, 80
 
|Webmail unter mail.un-hack-bar.de erreichbar.
 
|
 
|}
 
  
 
=neuromancer (aka Contabo Server 2)=
 
=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)
 
 
 
  
 
{| class="wikitable"
 
{| class="wikitable"
 +
! Container-Name
 +
! Image
 +
! Sub-Container
 +
! Web-Adresse
 +
! Networks
 +
! Externe Ports
 +
! Besonderheiten
 +
! Erläuterung
 
|-
 
|-
! Container<br/>Name || Image|| Sub<br/>Container || Web<br/>Adresse || Networks|| Externe<br/>Ports<br />|| Besonderheiten|| Erläuterung
+
|minecraft
|-
+
|itzg/minecraft-server
|[[Projekt:Minecraft-Server|minecraft]]
 
|[https://hub.docker.com/r/itzg/minecraft-server/ itzg/minecraft-server]
 
|
 
|
 
* http://mc.unhb.de:8123 (direkt)
 
* https://mc.unhb.de/ (via nginx-reverse-proxy)
 
|
 
|
 
* 8123 (dynmap)
 
* 9225 (Prometheus)
 
* 25565 (Minecraft)
 
| docker-compose.yml erweiterungen:
 
* section environment:
 
** MAX_MEMORY: 4G
 
** VIRTUAL_HOST: mc.unhb.de
 
** VIRTUAL_PORT: 8123
 
** LETSENCRYPT_HOST: mc.unhb.de
 
|Admin: ryze
 
|-
 
|watchtower
 
|containrrr/watchtower
 
|(-)
 
|(-)
 
|(-)
 
|(-)
 
| email notifications werden derzeit an smash gesendet
 
|Überwacht laufende Container. Wenn es eine neue Version gibt, wird der Container gestoppt, die neue Version gepullt, der Container gelöscht und neu gestartet.
 
|-
 
|nginx
 
|jwilder/nginx-proxy:alpine
 
|(-)
 
 
|(-)
 
|(-)
 +
|[http://mc.unhb.de:8123 http://mc.unhb.de:8123]
 
|
 
|
* nginx_net
+
|8123 (dynmap), 9225 (PrometheusExporter), 25565 (Minecraft Server)
* minecraft_default
 
* mailcowdockerized_mailcow-network
 
|80, 443
 
 
|  
 
|  
|Reverse Proxy. Schleift Anfragen zum richtigen Container durch.
+
|administriert durch ryze, siehe [[Projekt:Minecraft-Server]]
|-
 
|nginx-proxy-letsencrypt
 
|jrcs/letsencrypt-nginx-proxy-companion:stable
 
|(-)
 
|(-)
 
|(-)
 
|(-)
 
| docker-compose.yml erweiterungen:
 
* section environment:
 
** DEFAULT_EMAIL=accounts@unhb.de
 
** NGINX_PROXY_CONTAINER=nginx_proxy
 
|Holt letsencrypt Zertifikate für alle Container ab.
 
|-
 
|mailcowdockerized_*
 
|
 
* https://github.com/Shadowghost/mailcow-mailman3-dockerized
 
* https://github.com/mailcow/mailcow-dockerized
 
* https://github.com/maxking/docker-mailman
 
|
 
* mailcowdockerized_ipv6nat-mailcow_1
 
* mailcowdockerized_acme-mailcow_1
 
* mailcowdockerized_rspamd-mailcow_1
 
* mailcowdockerized_netfilter-mailcow_1
 
* mailcowdockerized_nginx-mailcow_1
 
* mailcowdockerized_php-fpm-mailcow_1
 
* mailcowdockerized_dovecot-mailcow_1
 
* mailcowdockerized_postfix-mailcow_1
 
* mailcowdockerized_dockerapi-mailcow_1
 
* mailcowdockerized_memcached-mailcow_1
 
* mailcowdockerized_olefy-mailcow_1
 
* mailcowdockerized_clamd-mailcow_1
 
* mailcowdockerized_mysql-mailcow_1
 
* mailcowdockerized_sogo-mailcow_1
 
* mailcowdockerized_redis-mailcow_1
 
* mailcowdockerized_watchdog-mailcow_1
 
* mailcowdockerized_solr-mailcow_1
 
* mailcowdockerized_mailman-web_1
 
* mailcowdockerized_mailman-core_1
 
* mailcowdockerized_database_1
 
* mailcowdockerized_unbound-mailcow_1
 
|
 
* https://neuromail.unhb.de/
 
* https://lists.unhb.de/
 
|mailcowdockerized_mailcow-network
 
|
 
* 25 (SMTP)
 
* 110 (POP3)
 
* 143 (IMAP)
 
* 465 (SMTPS)
 
* 587 (SMTP submission)
 
* 993 (IMAPS)
 
* 995 (POP3S)
 
* 4190 (SIEVE)
 
| Aenderungen an der docker-compose.yml fuer unsere zwecke:
 
* mailman-core:
 
** section environment:
 
** MM_HOSTNAME=${IPV4_NETWORK:-172.19.199}.2
 
* mailman-web: section environment:
 
** VIRTUAL_HOST=lists.unhb.de
 
** VIRTUAL_PORT=8080
 
** VIRTUAL_PROTO=uwsgi
 
** HTTPS_METHOD=redirect
 
** LETSENCRYPT_HOST=lists.unhb.de
 
* nginx_mailcow:
 
** section environment
 
** VIRTUAL_HOST=neuromail.unhb.de
 
** LETSENCRYPT_HOST=neuromail.unhb.de
 
** VIRTUAL_PORT=8080
 
|
 
Mailcow Suite fuer eMail + Mailman fuer mailinglisten
 
[[Mailman Subscribe liste aufräumen]]
 
 
|-
 
|-
 
|}
 
|}
 
=== 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
 
 
## 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
 

Bitte beachte, dass alle Beiträge zu Un-Hack-Bar von anderen Mitwirkenden bearbeitet, geändert oder gelöscht werden können. Reiche hier keine Texte ein, falls du nicht willst, dass diese ohne Einschränkung geändert werden können.

Du bestätigst hiermit auch, dass du diese Texte selbst geschrieben hast oder diese von einer gemeinfreien Quelle kopiert hast (weitere Einzelheiten unter Un-Hack-Bar:Urheberrechte). ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!

Bitte beantworte die folgende Frage, um diese Seite speichern zu können (weitere Informationen):

Abbrechen Bearbeitungshilfe (wird in einem neuen Fenster geöffnet)