Files
2026-06-09 18:40:21 +02:00

4.4 KiB


title: Wastebin created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, pastebin, self-hosted] confidence: high contested: false sources: [https://selfh.st/apps/?tag=33, https://github.com/matze/wastebin]

📋 Wastebin

Wastebin est un pastebin minimaliste écrit en Go, conçu pour la vitesse et la sobriété : single binary, démarrage instantané, idéal pour les home-labs légers.

📋 Informations Générales

Métadonnée Valeur
Site web https://github.com/matze/wastebin
GitHub https://github.com/matze/wastebin
License MIT
Langage principal Go
Étoiles GitHub 795
Dernière MAJ 2026-06-01
Catégorie cat-pastebin

📝 Description

Wastebin est un pastebin écrit en Go par matze, dans la lignée des outils minimalistes (Wastebin = "poubelle" pour les snippets jetables). Le projet mise sur la simplicité radicale : un binaire Go, un serveur HTTP, un store SQLite ou Postgres, et c'est tout. Pas de framework JS, pas d'UI alambiquée, pas de fonctionnalités exotiques.

L'application supporte les fonctionnalités essentielles : création de pastes avec slug personnalisé ou auto-généré, expiration temporelle, syntax highlighting (via highlight.js servi statiquement), thème clair/sombre, et une page de prévisualisation rapide. Le chiffrement E2E n'est pas proposé par défaut — c'est un pastebin simple pour partager du code publiquement.

C'est le choix idéal pour un home-lab léger, un RPi, ou un NAS Synology/QNAP, où la sobriété logicielle prime. Pour les cas d'usage avec confidentialité forte, on se tournera vers PrivateBin ou Paaster.

🚀 Installation

Docker Compose (recommandé)

services:
  wastebin:
    image: ghcr.io/matze/wastebin:latest
    container_name: wastebin
    restart: unless-stopped
    networks:
      - web
      - internal
    environment:
      - WASTEBIN_ADDRESS=0.0.0.0:8088
      - WASTEBIN_DATABASE=sqlite:///data/wastebin.db
      - WASTEBIN_LENGTH=8
      - WASTEBIN_EXPIRATIONS=600,3600,86400,604800,2592000
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.wastebin.rule=Host(`paste.example.com`)"
      - "traefik.http.routers.wastebin.tls.certresolver=letsencrypt"
      - "traefik.http.services.wastebin.loadbalancer.server.port=8088"
    volumes:
      - wastebin-data:/data

networks:
  web:
    external: true
  internal:

volumes:
  wastebin-data:

Installation manuelle (single binary)

  1. git clone https://github.com/matze/wastebin.git
  2. Prérequis : Go 1.22+.
  3. Compiler : go build -o wastebin .
  4. Lancer : ./wastebin (écoute par défaut sur :8088).

⚙️ Configuration

  • WASTEBIN_ADDRESS : interface d'écoute (par défaut 0.0.0.0:8088).
  • WASTEBIN_DATABASE : URL SQLite ou Postgres.
  • WASTEBIN_LENGTH : longueur des slugs générés (6-10).
  • WASTEBIN_EXPIRATIONS : durées proposées en secondes.
  • La configuration est purement par variables d'environnement, pas de fichier YAML.

🔄 Alternatives

Open Source

Propriétaires (ce que cette app remplace)

  • dpaste.org — simple, pas d'auth, pas d'expiration.
  • ix.io — minimaliste, CLI-friendly.
  • sprunge.us — minimaliste, CLI.
  • hastebin.com — simple, pas de chiffrement.
  • pastebin.com — historique mais UI vieillissante.

🔐 Sécurité

  • Pas de chiffrement E2E : ne pas l'utiliser pour des secrets.
  • HTTPS strict : service exposé, ne jamais servir en HTTP.
  • Rate limit : à mettre en place côté reverse proxy.
  • Backups SQLite : copier le fichier DB régulièrement.
  • Updates Go : peu de failles, mais suivre les releases upstream.

📚 Ressources

Pages Liées