Mise en place d’un pipeline CI/CD avec GitHub Actions.
Chaque fois que je fais un push sur la branche main,
le site est automatiquement déployé sur zybo.be.
DevOps CI/CD GitHub Actions
name: Deploy website
on:
push:
branches: [ "main" ]
permissions:
contents: read
pages: write
id-token: write
jobs:
build:
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Setup Pages
uses: actions/configure-pages@v4
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: .
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
Exemple de configuration sécurisée sur un serveur Linux : désactiver root, forcer les clés, changer le port, activer fail2ban.
Sécurité
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Port 2222
Mise en place d’un dashboard Grafana Cloud (gratuit) alimenté par node_exporter
sur une VM Ubuntu pour visualiser CPU/RAM/Disque.
Sysadmin Grafana Observability
Voir le tuto détaillé →