1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
| version: '2'
services:
# Serveur Web : NGINX
nginx:
container_name: nginx
image: nginx
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "10"
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- /data/Config/nginx/certs:/etc/nginx/certs
- /data/Config/nginx/vhost.d:/etc/nginx/vhost.d
- /data/Config/nginx/conf.d:/etc/nginx/conf.d
- /data/Config/nginx/html:/usr/share/nginx/html
# Génère les fichiers de config à NGINX
docker-gen:
container_name: nginx-generator
image: jwilder/docker-gen
restart: unless-stopped
command: -notify-sighup nginx -watch /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "10"
volumes_from:
- nginx
volumes:
- /var/run/docker.sock:/tmp/docker.sock
- /data/Config/nginx/nginx.tmpl:/etc/docker-gen/templates/nginx.tmpl
# Gère Let's Encrypt avec NGYNX
nginx-letsencrypt:
container_name: nginx-letsencrypt
image: alastaircoote/docker-letsencrypt-nginx-proxy-companion
restart: unless-stopped
logging:
driver: "json-file"
options:
max-size: "50m"
max-file: "10"
volumes_from:
- nginx
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
# Bases de données : MySQL
mysql:
container_name: mysql
image: mysql:latest
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=***
volumes:
- /data/mysql:/var/lib/mysql
# Bases de données : PHPMyAdmin
phpmyadmin:
container_name: phpmyadmin
image: phpmyadmin/phpmyadmin
restart: unless-stopped
environment:
- PMA_HOST=mysql
- VIRTUAL_HOST=phpmyadmin.***.fr
- LETSENCRYPT_HOST=phpmyadmin.***.fr
- LETSENCRYPT_EMAIL=contact@***.fr
# OwnCloud : Cloud libre
owncloud:
container_name: owncloud
image: owncloud:latest
restart: unless-stopped
environment:
- VIRTUAL_HOST=cloud.***.fr
- LETSENCRYPT_HOST=cloud.***.fr
- LETSENCRYPT_EMAIL=contact@***.fr
volumes:
- /data/Config/owncloud:/var/www/html/config
- /data/Config/owncloud:/var/www/html/data
- /data:/home
# Subsonic : Streaming audio
subsonic:
container_name: subsonic
image: hurricane/subsonic
restart: unless-stopped
environment:
- VIRTUAL_HOST=subsonic.***.fr
- VIRTUAL_PORT=80
- LETSENCRYPT_HOST=subsonic.***.fr
- LETSENCRYPT_EMAIL=contact@***.fr
- TZ=Europe/Paris
- MAX_MEM=1024
- HTTP_PORT=80
volumes:
- /data/Config/subsonic:/subsonic
- /data/Musique:/music
# jDownloader : Gestionnaire de téléchargements directs (https://github.com/jlesage/docker-jdownloader-2#docker-compose-file)
jdownloader-2:
container_name: jdownloader-2
image: jlesage/jdownloader-2
restart: unless-stopped
ports:
- "5800:5800"
environment:
- VIRTUAL_HOST=jdownloader.***.fr
- VIRTUAL_PORT=5800
- LETSENCRYPT_HOST=jdownloader.***.fr
- LETSENCRYPT_EMAIL=contact@***.fr
volumes:
- /data/Config/jdownloader-2:/config:rw
- /data/Telechargements:/output:rw |
Partager