Skip to main content

New Page

https://wiki.u2p.network/installation

Installer Athanor

1. Créer le dossier et cloner le repo

mkdir -p /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor
cd /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor
git clone https://git.u2p.network/u2p/u2p-node .

2. Patcher les bugs du repo

sed -i 's|./cmd/u2p|./cmd/athanor|g' containers/Containerfile.backend
sed -i 's/9999/9997/g' compose.yml

3. Créer les dossiers de données

mkdir -p /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/{backend/config,backend/data,postgres,curator/venvs,meilisearch}

4. Récupérer la config du curator

curl -o /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/curator/config.yml \
  https://git.u2p.network/u2p/u2p-node/raw/branch/main/curator/config.yml

5. Créer le fichier d'override

nano /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/compose.override.yml

Colle ça (remplace VOTRE_MOT_DE_PASSE_PG) :

services:
  backend:
    ports:
      - "9997:9997"
      - "9998:9998"
    environment:
      ATHANOR_SERVER_PORT: "9997"
      ATHANOR_RELAY_LISTEN: 0.0.0.0:9998
      ATHANOR_DATABASE_POSTGRES_PASSWORD: VOTRE_MOT_DE_PASSE_PG
      ATHANOR_ATLAS_PG_DEV_URL: "postgres://athanor:VOTRE_MOT_DE_PASSE_PG@postgres:5432/atlas_dev?sslmode=disable&search_path=public"
      ATHANOR_TOR_ENABLED: "false"
      ATHANOR_IPFS_ENABLED: "false"
      ATHANOR_MEILISEARCH_API_KEY: 16_KEYS_STING #openssl rand -hex 16
      OTEL_EXPORTER_OTLP_ENDPOINT: ""
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/backend/config:/app/config
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/backend/data:/app/data
    healthcheck:
      test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1:9997/health"]
      interval: 10s
      timeout: 5s
      retries: 3
      start_period: 30s

  frontend:
    ports:
      - "9996:80"
    environment:
      BACKEND_HOST: backend:9997

  postgres:
    environment:
      POSTGRES_PASSWORD: VOTRE_MOT_DE_PASSE_PG
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/postgres:/var/lib/postgresql/data

  curator:
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/curator/config.yml:/app/config.yml:ro
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/curator/venvs:/app/venvs

  meilisearch:
    environment:
      MEILI_MASTER_KEY: 16_KEYS_STING #openssl rand -hex 16
      MEILI_ENV: production
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor/meilisearch:/meili_data

6. Lancer la stack

cd /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor
docker compose --profile backend --profile frontend --profile postgres --profile meilisearch --profile curator up -d --build

Le build prend plusieurs minutes. Pour suivre :

docker compose logs -f

Ctrl+C pour quitter les logs sans arrêter les containers.


7. Vérifier que tout tourne

docker compose ps

Tous les containers doivent être en running ou healthy.


8. Config NPM

Frontend (UI)

  • Forward Hostname : IP du serveur
  • Forward Port : 9996
  • WebSocket Support : activé
  • SSL : activé

Backend (API) (optionnel, si tu veux exposer l'API directement)

  • Forward Hostname : IP du serveur
  • Forward Port : 9997
  • WebSocket Support : activé
  • SSL : activé

Mettre à jour

cd /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/U2P/Anathor

git pull

# Réappliquer les patches si écrasés par le pull
sed -i 's|./cmd/u2p|./cmd/athanor|g' containers/Containerfile.backend
sed -i 's/9999/9997/g' compose.yml

docker compose --profile backend --profile frontend --profile postgres --profile meilisearch --profile curator up -d --build

# Si le frontend ne joint pas le backend après la mise à jour
docker restart athanor-frontend

Docker ne touche pas aux volumes, tes données sont conservées.