Installation
Démarrez le déploiement Docker Compose actuel sur un seul hôte.
No terminal? Use the desktop app
Ciele Desktop performs every step on this page for you, including generating the secrets and starting the stack. It needs only Docker Desktop. This page is the server path.
Prérequis
- Installez Git.
- Installez Docker avec Docker Compose.
- Réservez un espace disque suffisant pour les images, Postgres et les fichiers importés.
- Réservez davantage de mémoire lorsque vous activez les workers optionnels.
Une seule commande
Le programme d'installation effectue toutes les étapes de la section suivante :
il vérifie les prérequis, récupère le code source dans ./ciele et exécute
bootstrap.sh.
curl -fsSL https://ciele.app/install.sh | shPassez les options de bootstrap via le pipe avec -s --, et définissez
CIELE_DIR pour choisir le répertoire de sortie ou CIELE_REF pour installer
une balise de version :
curl -fsSL https://ciele.app/install.sh | sh -s -- --seedLe programme d'installation ne supprime jamais rien : si le répertoire cible existe et n'est pas une copie de Ciele, il s'arrête et vous en informe.
Sur un Mac sans Docker, le programme d'installation ne s'arrête pas en cas d'erreur. Il ouvre Ciele Desktop et télécharge d'abord la version de la release lorsque l'application est absente. La configuration guidée qui s'y trouve relie Docker Desktop et lance la même pile que celle décrite sur cette page. Sous Linux, le programme d'installation refuse, car il n'y a pas d'application de bureau à laquelle confier le travail.
Amorcer la pile
Pour effectuer les mêmes étapes manuellement :
git clone https://github.com/MattiaIppoliti/ciele.git
cd ciele
./deploy/bootstrap.shLe script génère les secrets requis dans deploy/.env. Il crée ensuite les
profils par défaut et les lance.
Ouvrez http://localhost:3000 une fois que les services sont opérationnels. Le premier compte devient le propriétaire de l'organisation.
Utilisez ./deploy/bootstrap.sh --seed pour ajouter du contenu de démonstration
nettoyé.
Exécutez les images publiées au lieu de les compiler
La compilation de app, migrate et cron à partir du répertoire de travail
prend beaucoup de temps et nécessite le dépôt complet. Chaque version publie
également ces trois éléments en tant qu'images de conteneur :
./deploy/bootstrap.sh --images v0.4.0La commande écrit deux paramètres dans deploy/.env et effectue une extraction
au lieu de compiler :
COMPOSE_FILE=docker-compose.yml:docker-compose.images.yml
CIELE_IMAGE_TAG=v0.4.0Étant donné que les deux se trouvent dans deploy/.env, un
docker compose up -d ultérieur dans ce répertoire reste en mode image. Effacez
les deux paramètres pour revenir à la compilation à partir du code source.
Configurez CIELE_IMAGE_REGISTRY pour qu'il utilise un miroir ou votre propre
reconstruction.
Les profils, l'ordonnancement des services et la couche de base de données sont identiques dans les deux modes. Seule l'origine de ces trois services change.
Recreate the container after changing the public URL
The published application image resolves SUPABASE_PUBLIC_URL once, when the
container starts, because Next.js inlines that class of value at build time.
Run docker compose up -d to recreate the container after you change it. A
restart alone keeps the previous value.
Profils par défaut
| Profil | Par défaut | Services |
|---|---|---|
db | Oui | Postgres, pgvector, authentification, API de données, stockage et passerelle. |
migrate | Oui | Migrations en attente et compartiments de stockage requis. |
app | Oui | Console d'administration, moteur d'exécution de widget et API v1. |
cron | Oui | Tâches planifiées de l'application. |
workers | Non | Services de récupération de graphes et d'exploration avec rendu JavaScript. |
studio | Non | Interface d'administration de la base de données. |
Inspectez la pile
docker compose -f deploy/docker-compose.yml ps
docker compose -f deploy/docker-compose.yml logs -f appLa configuration par défaut publie l'application sur le port 3000 et la
passerelle de base de données sur le port 8000. Tous deux sont liés à
127.0.0.1, de sorte que rien n'est accessible depuis une autre machine tant
que vous n'avez pas placé un proxy inverse en amont. Définissez plutôt
BIND_ADDRESS=0.0.0.0 dans deploy/.env pour les publier sur chaque interface.
Postgres n'est jamais publié. La console de base de données (Studio) reste
toujours en boucle locale. Accédez-y via un tunnel SSH.
Add TLS before public use
The Compose stack serves plain HTTP. Put a trusted reverse proxy in front of every public origin.
Une fois qu'une origine publique existe, définissez CIELE_PUBLIC_ORIGIN dans
deploy/.env sur cette URL HTTPS. Les liens qui sont inclus dans un e-mail,
comme la confirmation de la newsletter, sont générés à partir de cette valeur.
Sans cela, l'application refuse d'envoyer ces e-mails. Elle ne crée pas de lien
à partir de l'en-tête Host de la requête.