Skip to content

Améliorations #1

@alexandre-dos-reis

Description

@alexandre-dos-reis

A mon humble avis, le config est déjà robuste ! Voici tout de même quelques points que j'améliorais :

  • Ajouter des valeurs par défaut pour les variables d'environnement\args dans le fichier compose.yml qui pourront être écrasées d'après la doc comme ceci :
  apache:
    build:
      context: './apache/'
      args:
        - APACHE_VERSION=${APACHE_VERSION:-2.4.53}

Ensuite, j'effacerai le fichier .env car cela peut provoquer des confusions avec le fichier .env de l'application.( Y'en a-t-il un d'ailleurs ?).

  • Il y ambiguïté entre ce que vous appelez les versions et les tags des images.

Exemple: Dans le fichier .env, vous appelez la version d'Apache 2.4.53-alpine, qui est en fait un tag d'image. Cela laisse à l'utilisateur le choix du tag ce qui peut provoquer des erreurs de build si l'utilisateur décide d'utiliser une image debian et que le dockerfile apache contient des commandes apk.

Je ferai plutôt :

ARG APACHE_TAG_VERSION

FROM httpd:${APACHE_TAG_VERSION}-alpine
...
  • Je trouve ça dommage de construire une image pour la DB sachant que l'import de la DB peut déjà se faire au démarrage du conteneur avec ./mysql/sql:/docker-entrypoint-initdb.d/:rw

  • Enfin je créerai 2 fichiers compose.yml, un pour la conf Apache, l'autre pour la conf Nginx. On pourrait le lancer comme ça :

    • docker-compose up -d -f compose-apache.yml
    • Ou utiliser le système d'override pour mutualiser la config mais cela rallonge considérablement les commandes :
      • docker-compose up -d -f compose.base.yml -f compose.apache.yml ou
      • docker-compose up -d -f compose.base.yml -f compose.nginx.yml

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions