Logo Gray

Weblate Docker Installation

Beitrag Erstellt: 20. Juli 2024

Debain 12, port 80 freigeben.

Mindestanforderungen:

  • 3 GB Arbeitsspeicher
  • 2 CPU-Kerne
  • 1 GB Speicherplatz
				
					sudo apt update
				
			
				
					sudo apt upgrade -y
				
			
				
					sudo apt install -y apt-transport-https ca-certificates curl gnupg lsb-release
				
			
				
					sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER

				
			

Einmal an und abmelden damit befehle auch ohne sudo ausführbar sind

				
					exec su -l $USER
				
			
				
					mkdir ~/weblate
cd ~/weblate

				
			
				
					nano docker-compose.yml

				
			

Passe die Variablen des folgenden .yml File an.

Optional: IP-Adresse statt Domain eintragen

ein Benutzer namens Admin wird angelegt. das Passwort taucht in den logs auf.

Es kann aber auch im yml File spezifiziert werden: 

  • WEBLATE_ADMIN_PASSWORD: admin_password
  • WEBLATE_ADMIN_EMAIL: admin@example.com
				
					version: '3.8'

services:
  weblate:
    image: weblate/weblate
    ports:
      - "80:8080"
    environment:
      - WEBLATE_EMAIL_HOST=smtp.XXX.de
      - WEBLATE_EMAIL_PORT=587
      - WEBLATE_EMAIL_HOST_USER=YOUR@EMAIL.ADRESS
      - WEBLATE_EMAIL_HOST_PASSWORD=YOUR-PASSWORD
      - WEBLATE_EMAIL_USE_TLS=True
      - WEBLATE_EMAIL_USE_SSL=False
      - REDIS_HOST=redis
      - REDIS_PORT=6379
      - WEBLATE_REDIS_HOST=redis
      - WEBLATE_DB_HOST=db
      - WEBLATE_DB_NAME=weblate
      - WEBLATE_DB_USER=weblate
      - WEBLATE_DB_PASSWORD=secret
      - WEBLATE_SITE_DOMAIN=weblate.XXX.com
      - POSTGRES_DB=weblate
      - POSTGRES_USER=weblate
      - POSTGRES_PASSWORD=secret
      - POSTGRES_HOST=db
      - WEBLATE_DEFAULT_FROM_EMAIL=YOUR@EMAIL.ADRESS
    depends_on:
      - redis
      - db
    networks:
      - weblate_default

  db:
    image: postgres:13
    environment:
      - POSTGRES_DB=weblate
      - POSTGRES_USER=weblate
      - POSTGRES_PASSWORD=secret
    networks:
      - weblate_default

  redis:
    image: redis:6.2
    networks:
      - weblate_default

networks:
  weblate_default:
    external: true
				
			
				
					docker compose up -d
				
			

Besuche deine Domain.

Nützliche Befehle:

zeigt alle docker container und ihren status

				
					docker ps
				
			

Falls was schief geht: 

				
					docker logs weblate-weblate-1
				
			

Oder für noch mehr ausführliche logs:

				
					docker compose logs -f
				
			

Passe die smtp daten an deine an um die email verbindung zu testen. Danach schaue in die logs mit obigem befehl.

				
					docker exec -it weblate-weblate-1 openssl s_client -starttls smtp -crlf -connect smtp.ionos.de:587