# APT DEPOT Créer un dépôt Debian sécurisé via clé GPG pour héberger des paquets ## CONFIGURATION - Editer le fichier `app/entrypoint.sh` ```sh GPG_KEY_NAME="example" ... EMAIL="test@exemple.com" ``` - Changer le port `- 8000:` dans le `compose.yml` si besoin - Metre les paquets dans le dossier `depot/` ## UTILISATION - Démarrer le conteneur ```bash docker compose up -d ``` Note: La première fois, il génère les clés GPG :bulb: **A chaque ajout de paquet, redémarrer le conteneur pour qu'il resigne les paquets avec la clé GPG** #### Utiliser le dépôt pour installer des paquets - Ajouter la clé du dépôt ainsi que l'adresse dans les sources: ```bash sudo wget -O /etc/apt/trusted.gpg.d/gn-depot.asc https://deb.legaragenumerique.fr/pgp-key.public echo 'deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/gn-depot.asc] https://deb.legaragenumerique.fr stable main' \ | sudo tee /etc/apt/sources.list.d/gn-depot.list ``` - Mettre à jour les dépôts: ```bash sudo apt update ``` - Installer un paquet: ```bash sudo apt install geo -y ``` #### Création d'un paquet - Structure d'un paquet Debian: ``` paquet/ ├── DEBIAN │ ├── control -> description du paquet │ ├── postinst -> script s'éxécutant après l'installation du paquet │ └── prerm -> script s'éxécutant avant la désinstallation du paquet └── usr ├── bin │ └── mon-binaire └── share └── applications └── application.desktop ``` - Builder le paquet: ```bash dpkg-deb --build paquet ``` > Output: paquet.deb #### Ajout d'un paquet au dépôt - Renommer le paquet: ```bash mv geo.deb geo_amd64.deb ``` - Placer le paquet dans le dossier `depot/`: ```bash mv geo_amd64.deb depot/ ``` - Redémarrer le conteneur: ```bash docker compose down -v && docker compose up -d ```