Installation via Docker
Sync-in peut être installé à l'aide de l’image Docker officielle.
Cette image officielle est conçue pour être utilisée dans une configuration avec Docker Compose.
📋 Prérequis
⚙️ Configuration matérielle minimale
- RAM : 4 Go
- CPU : 2 cores/vCPU
- Espace disque : 2 Go
🐳 Docker
Cette configuration repose sur des fichiers Docker Compose utilisant l’extension x-include
.
Vous aurez besoin de :
- Docker Engine version 24 ou supérieure
- Docker Compose version 2.20 ou supérieure
✅ Vous pouvez vérifier les versions installées avec :
docker --version
docker compose version
🔗 Si Docker n’est pas installé, suivez le guide d'installation officiel de Docker.
📦 Fichiers de configuration
Pour récupérer les fichiers du dépôt Sync-in Docker depuis Github, utilisez au choix :
curl
etunzip
:
curl -L -o sync-in-docker.zip \
https://github.com/Sync-in/docker/archive/refs/heads/main.zip && \
unzip sync-in-docker.zip
- ou
git
:
git clone https://github.com/Sync-in/docker.git sync-in-docker
Vous devriez obtenir la structure suivante dans le répertoire sync-in-docker
:
├── config
│ ├── nginx
│ │ ├── docker-compose.nginx.yaml
│ │ └── nginx.conf
│ ├── onlyoffice
│ │ └── docker-compose.onlyoffice.yaml
│ └── sync-in-desktop-releases
│ └── docker-compose.sync-in-desktop-releases.yaml
│ └── update.sh
├── docker-compose.yaml
└── environment.yaml
🚀 Démarrage Rapide
1. Secrets par défaut
Accédez au répertoire Docker Compose :
cd sync-in-docker
Avant de démarrer le serveur, veillez à remplacer les secrets par défaut pour des raisons de sécurité.
Modifiez le fichier environment.yaml
:
auth:
token:
access:
secret: changeAccessWithStrongSecret
refresh:
secret: changeRefreshWithStrongSecret
mysql:
# Utilisez le mot de passe root défini dans docker-compose.yaml
url: mysql://root:MySQLRootPassword@mariadb:3306/sync_in
Puis, modifiez le fichier docker-compose.yaml
pour vous assurer que le mot de passe MySQL correspond :
services:
mariadb:
environment:
MYSQL_ROOT_PASSWORD: MySQLRootPassword
Utilisez des chaînes longues et générées aléatoirement pour vos secrets afin de garantir une sécurité maximale.
2. Lancer le serveur Sync-in
Pour définir vos propres identifiants administrateur au premier lancement, utilisez :
INIT_ADMIN_LOGIN='user' INIT_ADMIN_PASSWORD='password' docker compose up -d
Remplacez user
et password
par les identifiants souhaités.
Si vous ne définissez pas ces variables et lancez simplement :
docker compose up -d
Le serveur utilisera les identifiants administrateur par défaut :
- Login :
sync-in
- Mot de passe :
sync-in
Important : Pour des raisons de sécurité, il est fortement recommandé de modifier ces identifiants dès votre première connexion.
Pour vérifier le statut des conteneurs : docker compose ps
3. Accéder à l’interface Web
Une fois le serveur lancé, ouvrez votre navigateur à l’adresse suivante :
http://localhost:8080
Connectez-vous en utilisant les identifiants administrateur définis à l’étape 2.
🛠️ Configuration
Nginx
Dans un environnement de production, un reverse proxy permet un accès sécurisé et performant à votre instance Sync-in.
L’image officielle nginx est utilisée, et une configuration dédiée à Sync-in est incluse dans ce dépôt.
Pour l’activer, éditez le fichier docker-compose.yaml
et décommentez les lignes suivantes en haut du fichier :
include:
- ./config/nginx/docker-compose.nginx.yaml
Pour configurer HTTPS, modifiez le fichier ./config/nginx/nginx.conf
et ajoutez vos certificats SSL.
docker compose up -d
pour appliquer les modifications
Nginx est maintenant activé le port 80, rendant Sync-in accessible via http://localhost
.
OnlyOffice (optionnel)
⚠️ Pour activer l’intégration OnlyOffice, assurez-vous d’abord que la configuration Nginx est en place.
Ensuite, dans docker-compose.yaml
, décommentez les lignes suivantes :
include:
- ./config/nginx/docker-compose.nginx.yaml
- ./config/onlyoffice/docker-compose.onlyoffice.yaml
Modifiez environment.yaml
pour activer l’intégration :
applications:
files:
onlyoffice:
# activer l’intégration
enabled: true
# utiliser le même secret que dans docker-compose.yaml
secret: onlyOfficeSecret
Remplacez onlyOfficeSecret
par une valeur sécurisée, et assurez-vous qu’elle correspond à celle définie dans
./config/onlyoffice/docker-compose.onlyoffice.yaml
:
services:
onlyoffice:
environment:
- JWT_SECRET=onlyOfficeSecret
docker compose up -d && docker compose restart sync_in
pour appliquer les changements
Sync-in et OnlyOffice s’exécutent dans des conteneurs Docker et communiquent via Nginx.
Il est essentiel d’accéder à l’interface en utilisant soit l’adresse IP du serveur, soit un nom de domaine correctement configuré.
Accéder à Sync-in via http://localhost
ou http://127.0.0.1
empêchera le bon fonctionnement d’OnlyOffice —
les documents ne pourront ni être affichés ni édités.
Dépôt de clients (optionnel)
Si les applications de bureau ne disposent pas d’un accès à internet, le serveur Sync-in peut faire office de dépôt local
pour les releases des clients applicatifs.
Les utilisateurs peuvent ainsi télécharger les applications directement depuis leur compte et bénéficier des mises à jour automatiques.
Pour activer cette fonctionnalité, éditez docker-compose.yaml
et décommentez :
include:
- ./config/sync-in-desktop-releases/docker-compose.sync-in-desktop-releases.yaml
Puis, dans environment.yaml
, ajoutez la section suivante :
applications:
files:
appStore:
repository: local
Pour activer ou mettre à jour les versions des clients, exécutez les commandes suivantes :
chmod +x ./config/sync-in-desktop-releases/update.sh
./config/sync-in-desktop-releases/update.sh