Deploy using Docker Compose
Introduction
Actuellement, nous supportons l'utilisation de Docker Compose pour déployer l'application Syntho. Nous avons inclus un Docker Compose qui déploiera tous les conteneurs nécessaires à l'application Syntho. La page suivante présente les étapes à suivre pour déployer notre application à l'aide de Docker Compose.
Etapes du déploiement
Télécharger la dernière version de Docker Compose depuis notre dépôt Github sous [
Releases
] (https://github.com/syntho-ai/deployment-tools/releases). Le fichier à télécharger estdocker-compose.tar.gz
.Utilisez
docker login
pour vous connecter au Syntho Container Registry, oudocker load
pour charger des images à partir de fichiers. Voir la documentation Syntho sousDéployer Syntho
->Introduction
->Accéder aux images Docker
Extraire
docker-compose.tar.gz
en utilisanttar -xf docker-compose.tar.gz
et ouvrir le répertoire extraitCopiez
example.env
vers.env
en utilisant par exemple la commande Linuxcp example.env .env
Ajustez les variables suivantes dans
.env
pour une configuration minimale :LICENSE_KEY
: La clé de licence est fournie par Syntho.ADMIN_USERNAME
,ADMIN_EMAIL
etADMIN_PASSWORD
: les informations d'identification pour le compte administrateur qui peut être utilisé une fois que l'application est configurée. L'email et le mot de passe seront nécessaires pour se connecter.
Le fichier .env
contient la dernière balise image pour toutes les images, qui est une balise de roulement. Veuillez ajuster les balises d'image suivantes avec les balises fournies par l'équipe Syntho pour les rattacher à une certaine version :
RAY_IMAGE
CORE_IMAGE
BACKEND_IMAGE
FRONTEND_IMAGE
Pour accéder correctement à l'API Backend, le domaine doit être défini. Si l'application est accédée sur la même machine que celle qui la déploie, localhost
devrait convenir pour ce domaine. Si vous utilisez une autre machine sur votre réseau, l'adresse IP ou le nom d'hôte doit être utilisé pour les variables suivantes :
FRONTEND_HOST
: ceci devrait inclure le port également. Si le port 3000 est utilisé pour le frontend, et qu'il est accessible sur la même machine, la valeur seralocalhost:3000
. Si une autre machine sur le même réseau doit accéder au frontend, la valeur sera<IP de la machine déployée>:3000
FRONTEND_DOMAIN
: sera soitlocalhost
, soit l'IP de la machine qui exécute l'application Syntho.
Après l'ajustement de ces variables, le fichier docker compose
devrait être prêt pour le déploiement. La documentation continuera à décrire les sections particulières à ajuster dans des cas particuliers, mais à ce stade, le fichier docker compose
est prêt à être déployé. Docker Compose devrait être prêt à être déployé.
Informations complémentaires
La mise en place de plusieurs nœuds nécessite une configuration plus détaillée. Cette configuration est recommandée pour les environnements de production évolutifs. Les étapes et les configurations peuvent varier en fonction des exigences spécifiques du réseau et du nombre de nœuds concernés.
TLS
Si un certificat SSL doit être fourni, les variables d'environnement suivantes doivent être ajustées :
Par défaut, ces valeurs sont respectivement fixées à http
et False
.
API de base
Base de données
Les informations d'identification de la base de données que l'API de base et le Worker (core
et core_worker
et dans le fichier docker-compose) utilisent pour se connecter sont décrites dans les variables d'environnement suivantes :
Par défaut, ces valeurs sont définies à la valeur de l'instance Postgres qui est déployée dans le cadre du fichier docker-compose. Si une autre base de données doit être utilisée, les informations d'identification peuvent être ajustées ici. Seules les bases de données Postgres sont supportées.
Redis
Les informations utilisées pour se connecter à l'instance Redis sont enregistrées dans les variables d'environnement suivantes :
Variables d'environnement supplémentaires
D'autres variables importantes sont CORE_SECRET_KEY
, qui est utilisée comme clé de cryptage. Cette clé peut être générée en utilisant la commande suivante en python :
Si des problèmes avec le port de l'application surviennent, le port par défaut peut être modifié en utilisant la variable CORE_PORT
dans le fichier .env
.
Backend
Base de données
Tout comme l'API de base, le backend devra se connecter à la base de données Postgres. Cette base de données est utilisée pour stocker les données de l'application. Par défaut, elle se connectera à
Redis
Pour l'instance Redis utilisée pour le backend, nous pouvons définir les variables suivantes. L'instance Redis est incluse dans le fichier docker-compose
, mais si une instance Redis séparée est utilisée, les informations d'identification doivent être définies dans le fichier .env
.
Utilisateur Admin
Comme décrit précédemment dans la documentation, le nom d'utilisateur, l'adresse email et le mot de passe de l'utilisateur admin peuvent être ajustés. Les variables d'environnement suivantes peuvent être utilisées à cet effet :
Variables d'environnement supplémentaires
Pour le backend, quelques variables d'environnement supplémentaires peuvent être définies. Nous pouvons changer le port qui est exposé pour le backend si un problème survient avec le mappage des ports. Pour changer le port, nous pouvons changer la valeur de BACKEND_PORT
:
Nous avons ensuite la clé secrète que le backend utilise pour l'encryptage. Nous pouvons donner à cette clé n'importe quelle valeur, à condition qu'il s'agisse d'une chaîne assez longue. Exemple :
Frontend
Le frontend est responsable de l'interface utilisateur. Le frontend devra se connecter au Backend pour cela. La variable la plus importante laissée au frontend est la suivante :
Cette variable définit le port du frontend, qui devra être exposé pour que l'utilisateur puisse accéder à l'application.
Last updated