generale
Nomenclatura container
il nome dovrebbe essere univoco, in modo da essere immediatamente identificabile, meglio mettere il nome del progetto, l'ambiente (dev, coll, prod, prelive, ecc)
preferibilmente: <nometeam>-<nomeprogetto>-<nomeservizio>-<ambiente>
esempio
web-app:
image: gitlab-registry.eagleprojects.cloud/python/rpa/rpa-1942_webapp_hr:latest-dev
restart: unless-stopped
container_name: rpa-hr-web-app-dev <-- OK!
ports:
- '24406:8000'
volumes:
- ./shared-data:/app/downloads
env_file:
- .env
depends_on:
- redis
- db
environment:
- "TZ=Europe/Rome"
labels:
- 'com.centurylinklabs.watchtower.enable=true'
- "cloud.eagleprojects.autocd.enable=true"
web-app:
image: gitlab-registry.eagleprojects.cloud/python/rpa/rpa-1942_webapp_hr:latest-dev
restart: unless-stopped
container_name: web-app <-- NON OK!
ports:
- '24406:8000'
volumes:
- ./shared-data:/app/downloads
env_file:
- .env
depends_on:
- redis
- db
environment:
- "TZ=Europe/Rome"
labels:
- 'com.centurylinklabs.watchtower.enable=true'
- "cloud.eagleprojects.autocd.enable=true"
Porte
sarebbe bene utilizzare porte espste sull'host (quindi ports, non expose) superiori alla 23000 e inferiori alla 65000 incluse
esempio
web-app:
image: gitlab-registry.eagleprojects.cloud/python/rpa/rpa-1942_webapp_hr:latest-dev
restart: unless-stopped
container_name: hr-web-app-dev
ports: <--
- '24406:8000' <-- OK!
volumes:
- ./shared-data:/app/downloads
env_file:
- .env
depends_on:
- redis
- db
environment:
- "TZ=Europe/Rome"
labels:
- 'com.centurylinklabs.watchtower.enable=true'
Timezone
È importante mettere anche la timezone come environment, come negli esempi sopra