Outils pour utilisateurs

Outils du site


software:applications:ffsync:installation_docker

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
software:applications:ffsync:installation_docker [2021/08/16 20:51] – créée yoannsoftware:applications:ffsync:installation_docker [2021/10/15 16:12] (Version actuelle) yoann
Ligne 1: Ligne 1:
-{{tag>software firefox syncserver docker}}+{{tag>software firefox syncserver docker todo}}
  
 ====== Installation de Firefox syncserver via Docker  ====== ====== Installation de Firefox syncserver via Docker  ======
Ligne 9: Ligne 9:
  
 ===== Test ===== ===== Test =====
 +
 +Récupérer l'image
 +<code bash>
 +docker pull mozilla/syncserver:1.9.1
 +</code>
 +
 +Créer un volume pour la persistance des données
 +<code bash>
 +docker volume create ffsync_data
 +</code>
  
 <code bash> <code bash>
Ligne 25: Ligne 35:
     -e SYNCSERVER_DEBUG_ENABLED=true \     -e SYNCSERVER_DEBUG_ENABLED=true \
     -e PORT=5000 \     -e PORT=5000 \
-    mozilla/syncserver:latest+    mozilla/syncserver:1.9.1
 </code> </code>
 +
 +Si l'on souhaite maintenir masquée la clé secrète on peut utiliser un fichier plutôt que directement la variable d'environnement:
 +
 +<code bash>
 +# Générer la clé dans un fichier
 +$ head -c 20 /dev/urandom | sha1sum > ./secret-key.txt
 +
 +docker run --rm --name ffsync \
 +    -p 5000:5000 \
 +    -e SYNCSERVER_PUBLIC_URL=http://localhost:5000 \
 +    -e SYNCSERVER_SECRET_FILE=/etc/ffsync/secret-key.txt \
 +    -e SYNCSERVER_SQLURI=sqlite:////tmp/syncserver.db \
 +    -e SYNCSERVER_BATCH_UPLOAD_ENABLED=true \
 +    -e SYNCSERVER_FORCE_WSGI_ENVIRON=false \
 +    -e PORT=5000 \
 +    -v ./secret-key.txt:/etc/ffsync/secret-key.txt  \
 +    mozilla/syncserver:1.9.1
 +</code>
 +
 +<note>
 +L'image docker s'exécute avec l' UID/GID 1001/1001. Cet utilisateur doit avoir le droit en lecture sur le fichier secret-key.txt
 +</note>
  
 Lancer un shell bash dans le conteneur puis lancer l’exécution des tests: Lancer un shell bash dans le conteneur puis lancer l’exécution des tests:
Ligne 34: Ligne 66:
 /usr/local/bin/python -m syncstorage.tests.functional.test_storage \ /usr/local/bin/python -m syncstorage.tests.functional.test_storage \
     --use-token-server http://localhost:5000/token/1.0/sync/1.5     --use-token-server http://localhost:5000/token/1.0/sync/1.5
 +</code>
 +
 +Depuis un poste client, essayer de contacter le serveur via l'URL:
 +<code bash>
 +curl --silent "http://server.example.tld:5000/token/1.0/sync/1.5" | jq
 +{
 +  "status": "error",
 +  "errors": [
 +    {
 +      "location": "body",
 +      "name": "",
 +      "description": "Unauthorized"
 +    }
 +  ]
 +}
 +</code>
 +
 +Ici le serveur est bien à l'écoute, il répond que l'accès n'est pas autorisé.
 +
 +===== docker-compose =====
 +
 +<file YAML docker-compose.yml>
 +version: '3.7'
 +services:
 +    syncserver:
 +        container_name: syncserver
 +        image: mozilla/syncserver:latest
 +        volumes:
 +            - /syncserver:/data
 +        ports:
 +            - 5000:5000
 +        environment:
 +            SYNCSERVER_PUBLIC_URL: 'http://localhost:5000'
 +            SYNCSERVER_SECRET: '<PUT YOUR SECRET KEY HERE>'
 +            SYNCSERVER_SQLURI: 'sqlite:////data/syncserver.db'
 +            SYNCSERVER_BATCH_UPLOAD_ENABLED: 'true'
 +            SYNCSERVER_FORCE_WSGI_ENVIRON: 'false'
 +            PORT: '5000'
 +        restart: always
 +</file>
 +
 +===== Configurer ffsync derrière Traefik =====
 +
 +
 +
 +===== Serveur d'authentification =====
 +
 +<code bash>
 +docker pull mozilla/fxa-auth-server:v1.192.0
 +docker pull mozilla/fxa-content-server:v1.192.0
 </code> </code>
  
Ligne 46: Ligne 128:
   * https://hub.docker.com/r/mozilla/syncserver   * https://hub.docker.com/r/mozilla/syncserver
   * https://mozilla-services.readthedocs.io/en/latest/howtos/run-sync-1.5.html#further-configuration   * https://mozilla-services.readthedocs.io/en/latest/howtos/run-sync-1.5.html#further-configuration
 +  * https://mozilla-services.readthedocs.io/en/latest/howtos/run-fxa.html
  
software/applications/ffsync/installation_docker.1629147075.txt.gz · Dernière modification : 2021/08/16 20:51 de yoann