Table des matières

Auto-hébergeur OpenSign™ avec Docker sur Linux/MacOS/Windows

Lien :

Installer Docker

# Add Docker's official GPG key:
apt update
apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Installer Opensign

docker login
* exécuter localement OpenSign :
  * télécharger les fichiers **docker-compose.yml**, **Caddyfile** et **.env.local\_dev**
  * renommer .env.local\_dev en .env.prod
curl --remote-name-all https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/docker-compose.yml https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/Caddyfile https://raw.githubusercontent.com/OpenSignLabs/OpenSign/main/.env.local_dev && mv .env.local_dev .env.prod && docker compose up --force-recreate

utiliser un certificat autosigné

Générer un certificat auto‑signé AVEC SAN contenant l’IP

Il faut IMPÉRATIVEMENT ajouter l’adresse IP dans le champ Subject Alternative Name (SAN), sinon tous les navigateurs refuseront la connexion.

Remplacer X.X.X.X par l’IP du serveur.

openssl req -x509 -nodes -days 365 \
  -newkey rsa:2048 \
  -  -keyout server.key \
  -   -out server.crt \
  -   -subj "/CN=X.X.X.X" \
  -   -addext "subjectAltName = IP:X.X.X.X"
openssl x509 -in server.crt -text -noout

Importer le certificat dans Caddy

Dans le fichier docker-compose.yml, il faut monter le dossier des certificats et indiquer à Caddy de ne PAS utiliser Let’s Encrypt (car tu n’utilises pas un domaine).

Exemple :

services:
  caddy:
      image: caddy:latest
      ports:
          - "3001:3001"
      volumes:
          - ./Caddyfile:/etc/caddy/Caddyfile
          - /opt/opensign/certs:/certs
      depends_on:
          - client
          - server

Configurer Caddy pour utiliser le certificat auto‑signé

https://X.X.X.X:3001 {
    tls /certs/server.crt /certs/server.key
    reverse_proxy /api/* server:8080
    reverse_proxy client:3000
}

Redémarrer Caddy + OpenSign

docker compose down
docker compose up -d

Tester l’accès externe

Dans le navigateur : https://IP_DU_SERVEUR:3001

Installer mimio - S3

Objectif

Avoir un service S3‑compatible prêt à l’emploi (local/on‑prem), accessible via https://s3.example.fr avec console d’admin, comptes IAM (users), buckets, politiques, et sauvegardes.

Prérequis

Astuce : Dans Proxmox, attacher un disque virtuel distinct pour /data MinIO (facile à migrer/monitorer).

docker run -p 9000:9000 -p 9001:9001 \
  -v /minio/data:/data \
  -e "MINIO_ROOT_USER=admin" \
  -e "MINIO_ROOT_PASSWORD=motdepasse" \
  quay.io/minio/minio server /data --console-address ":9001"