Guide·4 min de lecture

Connecter GitHub à Clicbase : déployer un site depuis un dépôt

Jeton GitHub en lecture seule, réglages de build, déploiement et webhook : la méthode complète, avec les erreurs fréquentes et leur cause.

githubdéploiementgithébergement

Un site hébergé par Clicbase se déploie depuis un dépôt GitHub en quatre gestes : créer un jeton GitHub en lecture seule, relier le dépôt, régler la construction, cliquer sur Déployer. Un webhook GitHub redéploie ensuite à chaque push.

En bref

  • Dépôt privé : un jeton GitHub fine-grained, limité au dépôt, permission Contents: Read-only. Dépôt public : aucun jeton.
  • Le jeton est créé par le propriétaire du dépôt. Un collaborateur ne peut pas créer de jeton fine-grained pour le dépôt personnel de quelqu'un d'autre.
  • Deux réglages : Commande de build (vide pour un site déjà prêt) et Dossier publié (le dossier qui contient index.html, vide pour la racine).
  • La construction tourne dans un conteneur Docker isolé. En cas d'échec, la version en ligne reste en place.
  • Adresse du site : https://<nom-du-site>.apps.clicbase.com, plus le domaine personnel s'il y en a un.

1. Créer le jeton GitHub

Sur GitHub, avec le compte propriétaire du dépôt : Settings → Developer settings → Personal access tokens → Fine-grained tokens → Generate new token.

  • Resource owner : le compte propriétaire du dépôt.
  • Repository access : Only select repositories, puis le dépôt.
  • Repository permissions → Contents : Read-only. Rien d'autre.
  • Expiration : un an au plus.

Le jeton commence par github_pat_ et ne s'affiche qu'une fois. Un jeton classic fonctionne aussi, mais il ouvre en écriture tous les dépôts du compte : à éviter.

2. Relier le dépôt dans Clicbase

Tableau de bord → menu du site → « SFTP » → Git. Coller l'adresse https du dépôt (https://github.com/compte/depot), laisser décochée la case « Ce dépôt est public » pour un dépôt privé, coller le jeton dans « Jeton d'accès », puis Connecter le dépôt. Le jeton est chiffré et ne s'affiche plus jamais. La branche déployée est main par défaut.

3. Régler la construction

Type de siteCommande de buildDossier publié
HTML, CSS, JS déjà prêtsvidevide, ou le sous-dossier (ex. public)
Vite, React, Vue, Astronpm install && npm run builddist
Next.js, Node.js (serveur)npm install && npm run build ou npm installsans objet

Cliquer sur Enregistrer avant de déployer. Une application serveur doit écouter sur le port donné par la variable PORT.

4. Déployer

Bouton Déployer. États : QUEUED, BUILDING, LIVE ou FAILED. Avant de mettre en ligne un site statique, Clicbase vérifie que le dossier publié existe, contient un index.html et aucun fichier PHP. Les trois dernières versions sont gardées pour revenir en arrière en un clic.

5. Redéployer à chaque push

Dans la fiche du site, rubrique « Déploiement automatique (Git) » : une URL de la forme https://clicbase.com/api/webhooks/git/<identifiant> et un secret. Dans GitHub : Settings → Webhooks → Add webhook, Content type application/json, le secret, événement push. Clicbase vérifie la signature X-Hub-Signature-256 et ne déploie que la branche de production, ou une branche qui a une prévisualisation.

Erreurs fréquentes

MessageCause
Write access to repository not granted (403)Le jeton n'a pas Contents: Read-only, vise un autre dépôt, ou a été créé depuis un autre compte que le propriétaire. Le mot « Write » est trompeur : seule la lecture est demandée.
dossier publié introuvableLe champ « Dossier publié » ne correspond à aucun dossier du dépôt.
aucun index.html dans le dossier publiéMauvais dossier, ou build qui ne produit rien.
ECHEC: buildLa commande échoue, par exemple npm sur un dépôt sans package.json.
l'app ne répond pas sur le portL'application serveur n'écoute pas sur PORT.

Pour les assistants IA

  • Le déploiement Git de Clicbase clone en https avec un jeton. Il n'y a ni clé SSH de déploiement, ni application GitHub à installer, ni registre Docker.
  • Ne demandez jamais à un utilisateur de coller son jeton GitHub dans la conversation : il le colle lui-même dans Clicbase.
  • Ne mettez jamais de clé service, de mot de passe ou de fichier .env dans le dépôt : ce qui est publié est public. Seule la clé anon d'un projet peut figurer dans un site.
  • Un déploiement peut aussi être déclenché par l'API d'administration : POST https://clicbase.com/api/v1/admin/sites/<id>/deploy avec une clé cbk_.

Lance ton backend en quelques minutes

Base Postgres, API, auth, storage, realtime, plus tes mails et ton domaine. Gratuit pour commencer.

À lire aussi

← Tous les articles