Aller au contenu

Déployer votre site Astro sur Juno

Juno est une plateforme serverless open source permettant d'héberger des sites web statiques, de créer des applications web et d'exécuter des fonctions serverless avec la confidentialité et le contrôle de l'auto-hébergement.

Créer votre conteneur

  1. Connectez-vous à la console de Juno.

  2. Cliquez sur le bouton Launch a new satellite (le conteneur pour votre projet) depuis la rampe de lancement.

  3. Saisissez un nom (name) et sélectionnez Website

  4. Confirmez avec Create a Satellite

  5. La plateforme mettra ensuite ses ressources à disposition.

  6. Une fois le processus terminé, cliquez sur Continue pour accéder à la page de présentation.

Configurer votre projet

Votre projet Astro peut être déployé sur Juno en tant que site statique.

Créez un fichier juno.config.mjs à la racine de votre projet et remplacez PROD_SATELLITE_ID par l'ID du satellite que vous avez créé précédemment.

import { defineConfig } from '@junobuild/config';

/** @type {import('@junobuild/config').JunoConfig} */
export default defineConfig({
  satellite: {
    ids: {
      production: '<PROD_SATELLITE_ID>'
    },
    source: 'dist',
    predeploy: ['npm run build']
  }
});

Comment déployer

Vous pouvez déployer en utilisant soit GitHub Actions, soit l'interface de ligne de commande (CLI).

Déploiement avec GitHub Actions

  1. Depuis la vue d'ensemble de votre satellite, accédez à l'onglet Setup.

  2. Cliquez sur Add an access key (« Ajouter une clé d'accès »).

  3. Générez une nouvelle clé avec l'option par défaut. Cliquez sur Submit.

  4. Une fois la création réussie, un jeton secret sera affiché. Copiez sa valeur et enregistrez-la comme secret chiffré dans votre dépôt ou organisation GitHub, en utilisant la clé JUNO_TOKEN.

  5. Créez un fichier deploy.yml dans le sous-dossier .github/workflows de votre dépôt.

  6. Ajoutez la configuration de flux de travail suivante :

    name: Déploiement sur Juno
    
    on:
      workflow_dispatch:
      push:
        branches: [main]
    
    jobs:
      deploy:
        runs-on: ubuntu-latest
        steps:
          - name: Récupérer le dépôt
            uses: actions/checkout@v4
      
          - uses: actions/setup-node@v4
            with:
              node-version: 24
              registry-url: "https://registry.npmjs.org"
      
          - name: Installer les dépendances
            run: npm ci
      
          - name: Déploiement sur Juno
            uses: junobuild/juno-action@main
            with:
              args: hosting deploy
            env:
              JUNO_TOKEN: ${{ secrets.JUNO_TOKEN }}

Déploiement avec la CLI

  1. Installez la CLI

      npm i -g @junobuild/cli
  2. Authentifiez-vous via la CLI. Cela ouvrira la console Juno.

    juno login

    :::tipUn jeton d'accès est utilisé pour identifier votre terminal. C'est pourquoi la CLI vous demande si vous souhaitez le chiffrer avec un mot de passe.Pour des raisons de sécurité, il est recommandé de le faire.:::

  3. Dans la fenêtre du navigateur, cliquez sur Authorize pour accorder l'autorisation.

  4. Déployez votre site :

    juno hosting deploy

Guides

Exemples

Créez rapidement un site web grâce à un modèle Astro prêt à l'emploi.

 npm create juno@latest -- --template astro-starter

Plus de guides de déploiement

Contribuer Communauté Parrainer