diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..cf1d9b5 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,52 @@ +services: + owncloud: + image: owncloud/server:latest + restart: unless-stopped + labels: + - "traefik.enable=true" + - "traefik.http.routers.owncloud.rule=Host(`cloud.smulders.online`)" + - "traefik.http.routers.owncloud.entrypoints=websecure" + - "traefik.http.routers.owncloud.tls.certresolver=letsencrypt" + environment: + - OWNCLOUD_DOMAIN=cloud.smulders.online + - OWNCLOUD_TRUSTED_DOMAINS=cloud.smulders.online + - OWNCLOUD_DB_TYPE=mysql + - OWNCLOUD_DB_HOST=mariadb + - OWNCLOUD_DB_NAME=${DB_NAME} + - OWNCLOUD_DB_USERNAME=${DB_USER} + - OWNCLOUD_DB_PASSWORD=${DB_PASSWORD} + - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USER} + - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD} + volumes: + - ./data/owncloud:/mnt/data + depends_on: + - mariadb + - redis + networks: + - traefik + - internal + + mariadb: + image: mariadb:10.11 + restart: unless-stopped + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=${DB_NAME} + - MYSQL_USER=${DB_USER} + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ./data/mariadb:/var/lib/mysql + networks: + - internal + + redis: + image: redis:7-alpine + restart: unless-stopped + networks: + - internal + +networks: + traefik: + external: true + internal: + driver: bridge \ No newline at end of file