Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
technique:docker:picasoft:new [2022/05/24 20:36] – ppom | technique:docker:picasoft:new [2022/09/24 10:39] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. rdelaage |
---|
<bootnote>Il ne faut pas hésiter à créer une image personnalisée basée sur l'image officielle "juste" pour ajouter un `entrypoint` personnalisé ! Ça ne coûte pas grand chose, ça fait gagner du temps, et ça évite les erreurs (exemple : une instruction d'initialisation de base de donnée sur une instance qui tourne déjà).</bootnote> | <bootnote>Il ne faut pas hésiter à créer une image personnalisée basée sur l'image officielle "juste" pour ajouter un `entrypoint` personnalisé ! Ça ne coûte pas grand chose, ça fait gagner du temps, et ça évite les erreurs (exemple : une instruction d'initialisation de base de donnée sur une instance qui tourne déjà).</bootnote> |
| |
<bootnote tip>On pourra marquer le fait qu'un service a déjà été initialisé en créant un fichier "marqueur" dans un volume. Voir [Plume](https://gitlab.utc.fr/picasoft/projets/dockerfiles/-/tree/master/pica-plume) pour un exemple. D'autres techniques sont possibles :)</bootnote> | <bootnote tip>On pourra marquer le fait qu'un service a déjà été initialisé en créant un fichier "marqueur" dans un volume. Voir [Plume](https://gitlab.utc.fr/picasoft/projets/services/plume) pour un exemple. D'autres techniques sont possibles :)</bootnote> |
| |
### Modification du fichier de configuration au démarrage | ### Modification du fichier de configuration au démarrage |
* Mais qu'on a besoin de modifier la configuration lors de l'initialisation, | * Mais qu'on a besoin de modifier la configuration lors de l'initialisation, |
| |
Alors on créera nos propres variables d'environnement et un `entrypoint` personnalisé. C'est ce qu'on fait pour [Mattermost](https://gitlab.utc.fr/picasoft/projets/dockerfiles/-/blob/master/pica-mattermost/entrypoint.sh) : `config.json` n'est pas versionné, mais l'`entrypoint` récupère la configuration via l'environnement et l'injecte dans `config.json`. | Alors on créera nos propres variables d'environnement et un `entrypoint` personnalisé. C'est ce qu'on fait pour [Mattermost](https://gitlab.utc.fr/picasoft/projets/services/mattermost/-/blob/master/entrypoint.sh) : `config.json` n'est pas versionné, mais l'`entrypoint` récupère la configuration via l'environnement et l'injecte dans `config.json`. |
| |
## Gestion des secrets | ## Gestion des secrets |
Le premier système consiste en un backup régulier de la totalité des machines virtuelles, il n'y a rien à faire de particulier pour ces backups lors de la mise en place d'un service. | Le premier système consiste en un backup régulier de la totalité des machines virtuelles, il n'y a rien à faire de particulier pour ces backups lors de la mise en place d'un service. |
| |
Le second système concerne les backups des bases de données, nous avons sur chaque machine virtuelle [[technique:adminsys:backup:db:start|un service dédié]] dans un conteneur docker qui s'occupe de ces backups, il s'agit du service ''db-backup''. | Le second système concerne les backups des bases de données, nous avons sur chaque machine virtuelle [[technique:old:adminsys:backup:db:start|un service dédié]] dans un conteneur docker qui s'occupe de ces backups, il s'agit du service ''db-backup''. |
| |
<bootnote>Cette section n'est pertinente que pour les services avec une base de données.</bootnote> | <bootnote>Cette section n'est pertinente que pour les services avec une base de données.</bootnote> |