302 lines
7.4 KiB
YAML
302 lines
7.4 KiB
YAML
|
#
|
||
|
# AzuraCast Docker Compose Configuration File
|
||
|
#
|
||
|
# When updating, you will be prompted to replace this file with a new
|
||
|
# version; you should do this whenever possible to take advantage of
|
||
|
# new updates.
|
||
|
#
|
||
|
# If you need to customize this file, you can create a new file named:
|
||
|
# docker-compose.override.yml
|
||
|
# with any changes you need to make.
|
||
|
#
|
||
|
version : '2.2'
|
||
|
|
||
|
services :
|
||
|
nginx_proxy :
|
||
|
container_name : nginx_proxy
|
||
|
image : "anatsam/azuracast_nginx_proxy"
|
||
|
ports :
|
||
|
- '${AZURACAST_HTTP_PORT:-80}:80'
|
||
|
- '${AZURACAST_HTTPS_PORT:-443}:443'
|
||
|
volumes :
|
||
|
- letsencrypt:/etc/nginx/certs
|
||
|
- nginx_proxy_vhosts:/etc/nginx/vhost.d
|
||
|
- letsencrypt_html:/usr/share/nginx/html
|
||
|
- /var/run/docker.sock:/tmp/docker.sock:ro
|
||
|
environment :
|
||
|
NGINX_TIMEOUT : ${NGINX_TIMEOUT:-1800}
|
||
|
DEFAULT_HOST : ${LETSENCRYPT_HOST:-azuracast.local}
|
||
|
networks :
|
||
|
- frontend
|
||
|
depends_on :
|
||
|
- web
|
||
|
restart : always
|
||
|
|
||
|
nginx_proxy_letsencrypt :
|
||
|
container_name : nginx_proxy_letsencrypt
|
||
|
image : "anatsam/azuracast_nginx_proxy_letsencrypt"
|
||
|
volumes_from :
|
||
|
- nginx_proxy
|
||
|
volumes :
|
||
|
- letsencrypt_acme:/etc/acme.sh
|
||
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||
|
environment :
|
||
|
DEFAULT_EMAIL : ${LETSENCRYPT_EMAIL}
|
||
|
networks :
|
||
|
- frontend
|
||
|
restart : always
|
||
|
|
||
|
web :
|
||
|
container_name : azuracast_web
|
||
|
image : "anatsam/azuracast_web_v2"
|
||
|
# Want to customize the HTTP/S ports? Follow the instructions here:
|
||
|
# https://docs.azuracast.com/en/administration/docker#using-non-standard-ports
|
||
|
ports :
|
||
|
- '${AZURACAST_SFTP_PORT:-2022}:2022'
|
||
|
depends_on :
|
||
|
- mariadb
|
||
|
- stations
|
||
|
- redis
|
||
|
env_file : azuracast.env
|
||
|
environment :
|
||
|
LANG : ${LANG:-en_US.UTF-8}
|
||
|
AZURACAST_DC_REVISION : 11
|
||
|
AZURACAST_VERSION : ${AZURACAST_VERSION:-latest}
|
||
|
AZURACAST_SFTP_PORT : ${AZURACAST_SFTP_PORT:-2022}
|
||
|
VIRTUAL_HOST : ${LETSENCRYPT_HOST:-azuracast.local}
|
||
|
NGINX_TIMEOUT : ${NGINX_TIMEOUT:-1800}
|
||
|
LETSENCRYPT_HOST : ${LETSENCRYPT_HOST}
|
||
|
LETSENCRYPT_EMAIL : ${LETSENCRYPT_EMAIL}
|
||
|
volumes :
|
||
|
- letsencrypt:/etc/nginx/certs:ro
|
||
|
- www_vendor:/var/azuracast/www/vendor
|
||
|
- tmp_data:/var/azuracast/www_tmp
|
||
|
- station_data:/var/azuracast/stations
|
||
|
- shoutcast2_install:/var/azuracast/servers/shoutcast2
|
||
|
- geolite_install:/var/azuracast/geoip
|
||
|
- sftpgo_data:/var/azuracast/sftpgo/persist
|
||
|
- backups:/var/azuracast/backups
|
||
|
networks :
|
||
|
- frontend
|
||
|
- backend
|
||
|
restart : always
|
||
|
ulimits : &default-ulimits
|
||
|
nofile :
|
||
|
soft : 65536
|
||
|
hard : 65536
|
||
|
logging : &default-logging
|
||
|
options :
|
||
|
max-size : "1m"
|
||
|
max-file : "5"
|
||
|
|
||
|
mariadb :
|
||
|
container_name : azuracast_mariadb
|
||
|
image : "anatsam/azuracast_db"
|
||
|
volumes :
|
||
|
- db_data:/var/lib/mysql
|
||
|
env_file : azuracast.env
|
||
|
networks :
|
||
|
- backend
|
||
|
restart : always
|
||
|
logging : *default-logging
|
||
|
|
||
|
redis :
|
||
|
container_name : azuracast_redis
|
||
|
image : "anatsam/azuracast_redis"
|
||
|
sysctls :
|
||
|
net.core.somaxconn : 1024
|
||
|
volumes :
|
||
|
- redis_data:/data
|
||
|
networks :
|
||
|
- backend
|
||
|
restart : always
|
||
|
logging : *default-logging
|
||
|
|
||
|
stations :
|
||
|
container_name : azuracast_stations
|
||
|
image : "anatsam/azuracast_radio"
|
||
|
ports :
|
||
|
# This default mapping is the outgoing and incoming ports for the first 50 stations.
|
||
|
# You can override this port mapping in your own docker-compose.override.yml file.
|
||
|
# For instructions, see:
|
||
|
# https://docs.azuracast.com/en/administration/docker#expanding-the-station-port-range
|
||
|
- '8000:8000'
|
||
|
- '8005:8005'
|
||
|
- '8006:8006'
|
||
|
- '8010:8010'
|
||
|
- '8015:8015'
|
||
|
- '8016:8016'
|
||
|
- '8020:8020'
|
||
|
- '8025:8025'
|
||
|
- '8026:8026'
|
||
|
- '8030:8030'
|
||
|
- '8035:8035'
|
||
|
- '8036:8036'
|
||
|
- '8040:8040'
|
||
|
- '8045:8045'
|
||
|
- '8046:8046'
|
||
|
- '8050:8050'
|
||
|
- '8055:8055'
|
||
|
- '8056:8056'
|
||
|
- '8060:8060'
|
||
|
- '8065:8065'
|
||
|
- '8066:8066'
|
||
|
- '8070:8070'
|
||
|
- '8075:8075'
|
||
|
- '8076:8076'
|
||
|
- '8090:8090'
|
||
|
- '8095:8095'
|
||
|
- '8096:8096'
|
||
|
- '8100:8100'
|
||
|
- '8105:8105'
|
||
|
- '8106:8106'
|
||
|
- '8110:8110'
|
||
|
- '8115:8115'
|
||
|
- '8116:8116'
|
||
|
- '8120:8120'
|
||
|
- '8125:8125'
|
||
|
- '8126:8126'
|
||
|
- '8130:8130'
|
||
|
- '8135:8135'
|
||
|
- '8136:8136'
|
||
|
- '8140:8140'
|
||
|
- '8145:8145'
|
||
|
- '8146:8146'
|
||
|
- '8150:8150'
|
||
|
- '8155:8155'
|
||
|
- '8156:8156'
|
||
|
- '8160:8160'
|
||
|
- '8165:8165'
|
||
|
- '8166:8166'
|
||
|
- '8170:8170'
|
||
|
- '8175:8175'
|
||
|
- '8176:8176'
|
||
|
- '8180:8180'
|
||
|
- '8185:8185'
|
||
|
- '8186:8186'
|
||
|
- '8190:8190'
|
||
|
- '8195:8195'
|
||
|
- '8196:8196'
|
||
|
- '8200:8200'
|
||
|
- '8205:8205'
|
||
|
- '8206:8206'
|
||
|
- '8210:8210'
|
||
|
- '8215:8215'
|
||
|
- '8216:8216'
|
||
|
- '8220:8220'
|
||
|
- '8225:8225'
|
||
|
- '8226:8226'
|
||
|
- '8230:8230'
|
||
|
- '8235:8235'
|
||
|
- '8236:8236'
|
||
|
- '8240:8240'
|
||
|
- '8245:8245'
|
||
|
- '8246:8246'
|
||
|
- '8250:8250'
|
||
|
- '8255:8255'
|
||
|
- '8256:8256'
|
||
|
- '8260:8260'
|
||
|
- '8265:8265'
|
||
|
- '8266:8266'
|
||
|
- '8270:8270'
|
||
|
- '8275:8275'
|
||
|
- '8276:8276'
|
||
|
- '8280:8280'
|
||
|
- '8285:8285'
|
||
|
- '8286:8286'
|
||
|
- '8290:8290'
|
||
|
- '8295:8295'
|
||
|
- '8296:8296'
|
||
|
- '8300:8300'
|
||
|
- '8305:8305'
|
||
|
- '8306:8306'
|
||
|
- '8310:8310'
|
||
|
- '8315:8315'
|
||
|
- '8316:8316'
|
||
|
- '8320:8320'
|
||
|
- '8325:8325'
|
||
|
- '8326:8326'
|
||
|
- '8330:8330'
|
||
|
- '8335:8335'
|
||
|
- '8336:8336'
|
||
|
- '8340:8340'
|
||
|
- '8345:8345'
|
||
|
- '8346:8346'
|
||
|
- '8350:8350'
|
||
|
- '8355:8355'
|
||
|
- '8356:8356'
|
||
|
- '8360:8360'
|
||
|
- '8365:8365'
|
||
|
- '8366:8366'
|
||
|
- '8370:8370'
|
||
|
- '8375:8375'
|
||
|
- '8376:8376'
|
||
|
- '8380:8380'
|
||
|
- '8385:8385'
|
||
|
- '8386:8386'
|
||
|
- '8390:8390'
|
||
|
- '8395:8395'
|
||
|
- '8396:8396'
|
||
|
- '8400:8400'
|
||
|
- '8405:8405'
|
||
|
- '8406:8406'
|
||
|
- '8410:8410'
|
||
|
- '8415:8415'
|
||
|
- '8416:8416'
|
||
|
- '8420:8420'
|
||
|
- '8425:8425'
|
||
|
- '8426:8426'
|
||
|
- '8430:8430'
|
||
|
- '8435:8435'
|
||
|
- '8436:8436'
|
||
|
- '8440:8440'
|
||
|
- '8445:8445'
|
||
|
- '8446:8446'
|
||
|
- '8450:8450'
|
||
|
- '8455:8455'
|
||
|
- '8456:8456'
|
||
|
- '8460:8460'
|
||
|
- '8465:8465'
|
||
|
- '8466:8466'
|
||
|
- '8470:8470'
|
||
|
- '8475:8475'
|
||
|
- '8476:8476'
|
||
|
- '8480:8480'
|
||
|
- '8485:8485'
|
||
|
- '8486:8486'
|
||
|
- '8490:8490'
|
||
|
- '8495:8495'
|
||
|
- '8496:8496'
|
||
|
volumes :
|
||
|
- station_data:/var/azuracast/stations
|
||
|
- shoutcast2_install:/var/azuracast/servers/shoutcast2
|
||
|
- letsencrypt:/etc/nginx/certs
|
||
|
- tmp_data:/var/azuracast/www_tmp
|
||
|
networks :
|
||
|
- frontend
|
||
|
- backend
|
||
|
init : true
|
||
|
restart : always
|
||
|
ulimits : *default-ulimits
|
||
|
logging : *default-logging
|
||
|
|
||
|
networks :
|
||
|
frontend :
|
||
|
driver : bridge
|
||
|
backend :
|
||
|
driver : bridge
|
||
|
|
||
|
volumes :
|
||
|
nginx_proxy_vhosts : { }
|
||
|
db_data : { }
|
||
|
letsencrypt : { }
|
||
|
letsencrypt_html : { }
|
||
|
letsencrypt_acme : { }
|
||
|
shoutcast2_install : { }
|
||
|
geolite_install : { }
|
||
|
sftpgo_data : { }
|
||
|
station_data : { }
|
||
|
www_vendor : { }
|
||
|
tmp_data : { }
|
||
|
redis_data : { }
|
||
|
backups : { }
|