################################################################################ # yourls # make sure you use the $PREFIX from .env for project_name # docker-compose -p project_name up -d # # # Version 1 ################################################################################ version: '3.1' volumes: yourls: yourls-db: networks: admin_web: external: name: admin_web services: yourls-db: # https://hub.docker.com/_/mariadb/ image: mariadb:${DB_V} restart: always volumes: - yourls-db:/var/lib/mysql networks: - admin_web environment: MYSQL_ROOT_PASSWORD: ${YOURLS_MYSQL_ROOT_PASSWORD} MYSQL_PASSWORD: ${YOURLS_MYSQL_PASSWORD} MYSQL_DATABASE: db_yourls MYSQL_USER: yourls yourls: # reference: https://github.com/matomo-org/docker/blob/master/.examples/docker-compose.yml image: yourls restart: always volumes: - yourls:/var/www/html networks: - admin_web environment: YOURLS_DB_HOST: ${PREFIX}_yourls-db_1 YOURLS_DB_USER: yourls YOURLS_DB_PASS: ${YOURLS_MYSQL_PASSWORD} YOURLS_DB_NAME: db_yourls YOURLS_SITE: https://${YOURLS_DOMAIN_NAME} YOURLS_USER: ${YOURLS_USER} YOURLS_PASS: ${YOURLS_PASS} labels: - "traefik.enable=true" - "traefik.http.routers.${PREFIX}_yourls.rule=Host(`${YOURLS_DOMAIN_NAME}`)" - "traefik.http.routers.${PREFIX}_yourls.entrypoints=websecure" - "traefik.http.routers.${PREFIX}_yourls.tls.certresolver=letsencrypt" - "traefik.http.services.${PREFIX}_yourls.loadbalancer.server.port=80"