Aller au contenu principal
Settings
Color Mode
Theme Skin
Background

Appearance preferences are saved in this browser only.

Environment
Current Environment Dev

Built with JEKYLL_ENV=development. Changes auto-reload under jekyll serve.

Theme & Build
Jekyll v3.10.0
Last Build Aug 09, 22:50
Page Location
Page Info
Layout default
Collection none
Path fr/quickstart/jekyll-setup.md
URL /fr/quickstart/jekyll-setup/
Cette page a été traduite automatiquement à partir de l'original en anglais. Voir l'original

Configuration de Jekyll

Configurez votre environnement de développement Jekyll axé sur Docker. Démarrez le serveur de développement, créez du contenu et personnalisez votre thème.

Configuration de Jekyll

Démarrez votre serveur de développement Jekyll basé sur Docker et créez votre premier contenu. Aucune installation locale de Ruby n’est nécessaire — tout s’exécute à l’intérieur du conteneur.

flowchart LR
    A([Repo cloned]) --> B[docker-compose up]
    B --> C{First run?}
    C -->|Yes| D[bundle install\n~2 min]
    C -->|No| E[Stats generator runs]
    D --> E
    E --> F[Jekyll server starts]
    F --> G([localhost:4000 🎉])

Prérequis

Complétez d’abord Configuration de la machine (Docker Desktop, Git, GitHub CLI).

Étape 1 — Cloner le dépôt

Si vous n’avez pas encore cloné :

gh repo clone bamr87/zer0-mistakes
cd zer0-mistakes

Ou, si vous avez utilisé l’assistant d’installation, vous êtes déjà dans le bon répertoire.

Étape 2 — Démarrer le serveur de développement

docker-compose up

Au premier lancement, Docker :

  1. Récupère l’image Jekyll (≈ 1–2 min)
  2. Exécute bundle install à l’intérieur du conteneur
  3. Exécute _data/generate_statistics.sh pour générer les statistiques du site
  4. Démarre Jekyll avec le rechargement automatique

Votre site est disponible à l’adresse http://localhost:4000.

Sortie de docker-compose up montrant le démarrage de Jekyll

Étape 3 — Vérifier l’état du site

docker-compose exec jekyll bundle exec jekyll doctor

Sortie de jekyll doctor

Sortie attendue :

Configuration file: /app/_config.yml
           Source: /app
      Destination: /app/_site
 Incremental build: enabled
      Generating: done in X seconds.

Commandes essentielles

# Start server (foreground — shows live logs)
docker-compose up

# Start detached
docker-compose up -d && docker-compose logs -f

# Stop server
docker-compose down

# Force rebuild (after Gemfile or Dockerfile changes)
docker-compose down && docker-compose up --build

# Shell into the container
docker-compose exec jekyll bash

# Build for production (no watch)
docker-compose exec -T jekyll bundle exec jekyll build \
  --config '_config.yml,_config_dev.yml'

Fichiers de configuration

Le thème utilise deux configurations superposées — le développement remplace la production :

_config.yml (production)

title: "Your Site Title"
description: "Your site description"
url: "https://yourdomain.com"
baseurl: ""

remote_theme: "bamr87/zer0-mistakes"

plugins:
  - github-pages
  - jekyll-remote-theme
  - jekyll-feed
  - jekyll-sitemap
  - jekyll-seo-tag
  - jekyll-paginate
  - jekyll-relative-links
  - jekyll-redirect-from
  - jekyll-include-cache

_config_dev.yml (surcharges de développement)

url: "http://localhost:4000"
baseurl: ""

# Use local theme files instead of remote
theme: "jekyll-theme-zer0"
remote_theme: false

livereload: true
incremental: true
show_drafts: true
future: true

Bootstrap 5.3.3 est intégré dans assets/vendor/ — il n’y a aucune clé de configuration bootstrap:.

Créer votre premier article

Les articles se trouvent dans pages/_posts/. Format du nom de fichier : YYYY-MM-DD-slug.md.

cat > pages/_posts/$(date +%Y-%m-%d)-my-first-post.md << 'EOF'
---
title: "My First Post"
description: "Hello from zer0-mistakes"
date: 2026-05-30T00:00:00.000Z
layout: article
tags: [hello-world]
categories: [Blog]
---
Hello, world! This is my first post.
EOF

Jekyll le prend en compte immédiatement (le rechargement automatique actualise le navigateur).

Structure du projet

zer0-mistakes/
├── _config.yml          # Production config
├── _config_dev.yml      # Dev overrides (loaded by docker-compose)
├── docker-compose.yml   # Container definition
├── pages/
│   ├── _posts/          # Blog posts
│   ├── _docs/           # Documentation pages
│   └── _quickstart/     # This guide
├── _layouts/            # Page templates
├── _includes/           # Reusable components
├── _sass/               # Sass partials
└── assets/
    ├── css/             # Compiled CSS + custom overrides
    ├── js/              # JavaScript modules
    └── vendor/          # Bootstrap 5.3.3 (vendored)

Structure du projet dans le terminal

Styles personnalisés

Ajoutez vos styles dans _sass/custom.scss (compilés dans assets/css/main.css) :

// _sass/custom.scss
:root {
  --bs-primary: #0d6efd;   // override Bootstrap primary color
}

.my-hero {
  background: linear-gradient(135deg, var(--bs-primary), var(--bs-secondary));
}

Ou ajoutez assets/css/user-overrides.css et liez-le dans _includes/core/head.html après main.css.

Dépannage

Le conteneur ne démarre pas

docker-compose logs jekyll
docker-compose down && docker-compose up --build

Erreurs bundle install

docker-compose exec jekyll bundle install --retry 3

Page introuvable / contenu obsolète

docker-compose exec jekyll bundle exec jekyll clean
docker-compose restart

Erreurs de permissions (Linux)

sudo chown -R $USER:$USER .