MasterpieceDockerCompose/wger
miracle091 b150eef2b1
Un paio di fix lessicali
2022-02-21 09:44:18 +01:00
..
.env aggiunto wger e migliorata la descrizione degli esempi nel readme principale 2021-08-19 16:55:01 +02:00
README.md Un paio di fix lessicali 2022-02-21 09:44:18 +01:00
docker-compose.yml Passaggio da wger/devel a wger/server 2022-02-18 16:39:16 +01:00

README.md

Wger

Descrizione

Sito ufficiale Sorgente Docker Hub Docs Demo

Wger è un server per la gestione della vostra alimentazione e allenamenti:

  • Interfaccia web multilingua e di facile comprensione
  • Per comodità esiste anche un'app per Android

Struttura file e cartelle

/home/
└── docker/
    └── wger/
        ├── db/
        ├── media/
        ├── static/
        ├── .env
        └── docker-compose.yml
  • db/ - cartella dove i dati del database vengono salvati
  • media/ - cartella dove le foto di wger vengono salvate
  • static/ - cartella dove i dati di wger vengono salvati
  • .env - file contenenti le variabili environment per il docker-compose
  • docker-compose.yml - file usato per creare il container

N.B. Tutti i file e le cartelle devono essere creati a mano

Esempi

Semplice esempio per iniziare ad usare subito il container Le credenziali per il primo login sono le seguenti:

  • Username: admin
  • Password: adminadmin

network

Con docker

docker network create custom-bridge

oppure usando podman

podman network create custom-bridge

docker-compose

docker-compose.yml

version: "3.8"
services:
  db:
    container_name: wger-db
    image: postgres:13-alpine
    security_opt:
      - no-new-privileges:true
    networks:
      - custom-bridge
    restart: always
    env_file: .env
    volumes:
      - ${POSTGRES_DATA:-/home/docker/wger/db}:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro
    healthcheck:
      test: ["CMD", "pg_isready", "-U", "wger"]
      interval: 1m30s
      timeout: 10s
      retries: 3
      start_period: 10s

  cache:
    container_name: wger-cache
    image: redis:alpine
    security_opt:
      - no-new-privileges:true
    networks:
      - custom-bridge
    restart: always

  wger:
    container_name: wger
    image: wger/server
    networks:
      - custom-bridge
    restart: unless-stopped
    depends_on:
      - db
      - cache
    ports:
      - ${WGER_WEBUI_PORT:-8000}:8000
    env_file: .env
    volumes:
      - ${WGER_STATIC:-/home/docker/wger/static}:/wger/static
      - ${WGER_MEDIA:-/home/docker/wger/media}/wger/media

networks:
  custom-bridge:
    name: custom-bridge
    driver: bridge

.env

# Generale
POSTGRES_DATA=/home/docker/wger/db
WGER_DATA=/home/docker/wger/static
WGER_DATA=/home/docker/wger/media
WGER_WEBUI_PORT=8000

# Postgres
POSTGRES_DB=wger
POSTGRES_USER=wger
POSTGRES_PASSWORD=wger

# Database
DJANGO_DB_ENGINE=django.db.backends.postgresql
DJANGO_DB_DATABASE=wger
DJANGO_DB_USER=wger
DJANGO_DB_PASSWORD=wger
DJANGO_DB_HOST=db
DJANGO_DB_PORT=5432

# Cache
DJANGO_CACHE_BACKEND=django_redis.cache.RedisCache
DJANGO_CACHE_LOCATION=redis://cache:6379/1
DJANGO_CACHE_TIMEOUT= 1296000 # 60*60*24*15, 15 giorni
DJANGO_CACHE_CLIENT_CLASS=django_redis.client.DefaultClient

DJANGO_MEDIA_ROOT=/home/wger/media

# Da cambiare con qualcosa di diverso
SECRET_KEY = CAMBIAMIPERFAVORE

# Registrazioni
ALLOW_REGISTRATION = True
ALLOW_GUEST_USERS = True
FROM_EMAIL=info@example.com  # Indirizzo da dove vengono mandate le email

# Altro
DJANGO_DEBUG=False
WGER_USE_GUNICORN=True
TIME_ZONE=Europe/Amsterdam
SITE_URL=http://localhost:8000

Reverse proxy

Vedi Todo

Aggiornamento

Automatico

Usando watchtower il container si aggiorna automaticamente

Manuale

  1. docker-compose up -d
  2. docker image prune

Backup e ripristino

Backup

Usate borg per fare i backup giornalieri dell'intera cartella wger

Ripristino

Per una maggiore spiegazione sui passaggi da fare, controllate qua

  1. fermare il container con docker-compose down
  2. cancellare l'intera cartella wger
  3. dal backup copiare la cartella wger
  4. far ripartire il container con docker-compose up -d

Todo

Implementare:


Licenza: CC BY-SA 4.0