# Dispatch
## Descrizione [![Sorgente](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=github&style=flat&label=&message=Sorgente)](https://github.com/khlieng/dispatch) [![Docker Hub](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=docker&style=flat&label=&message=Docker Hub)](https://hub.docker.com/r/khlieng/dispatch) [![Demo](https://img.shields.io/static/v1.svg?color=555555&logoColor=ffffff&logo=jekyll&style=flat&label=&message=Demo)](https://dispatch.khlieng.com/) Dispatch è un'interfaccia web per [IRC](https://wikiless.org/wiki/Internet_Relay_Chat): - Interfaccia semplice, veloce ma comunque moderna - Supporto al multi-utente e al multi-server - Supporto al download tramite [DCC](https://wikiless.org/wiki/Direct_Client-to-Client) ## Struttura file e cartelle ``` /home/ └── docker/ └── dispatch/ ├── data/ ├── .env └── docker-compose.yml ``` - `data/` - cartella dove i dati di dispatch 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 ### network Con docker ```bash docker network create custom-bridge ``` oppure usando podman ```bash podman network create custom-bridge ``` ### docker-compose `docker-compose.yml` ```yml version: "3.5" services: dispatch: container_name: dispatch image: khlieng/dispatch security_opt: - no-new-privileges:true restart: unless-stopped ports: - ${DISPATCH_WEBUI_PORT_HTTP:-80}:80 - ${DISPATCH_WEBUI_PORT_HTTPS:-443}:443 env_file: .env volumes: - ${DISPATCH_DATA:-/home/docker/dispatch/data}:/data networks: custom-bridge: name: custom-bridge driver: bridge ``` `.env` ```bash # Generale DISPATCH_WEBUI_PORT_HTTP=80 DISPATCH_WEBUI_PORT_HTTPS=443 DISPATCH_DATA=/home/docker/dispatch/data ``` ## Reverse proxy Vedi [Todo](#Todo) ## Aggiornamento ### Automatico Usando [watchtower](../watchtower) il container si aggiorna automaticamente ### Manuale 1. `docker-compose up -d` 2. `docker image prune` ## Backup e ripristino ### Backup Usate [borg](../borg) per fare i backup giornalieri dell'intera cartella `dispatch` ### Ripristino Per una maggiore spiegazione sui passaggi da fare, controllate [qua](../borg#user-content-controllare-la-cartella-dei-backup) 1. fermare il container con `docker-compose down` 2. cancellare l'intera cartella `dispatch` 3. dal backup copiare la cartella `dispatch` 4. far ripartire il container con `docker-compose up -d` ## Todo Implementare: - reverse proxy: **[caddy](https://caddyserver.com/)** o **[traefik](https://doc.traefik.io/traefik/)** --- Licenza: [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt)