diff --git a/docker-swag/docker-compose.yml b/docker-swag/docker-compose.yml index cec254e..e0207b1 100644 --- a/docker-swag/docker-compose.yml +++ b/docker-swag/docker-compose.yml @@ -2,8 +2,8 @@ version: "2.1" services: swag: - image: linuxserver/swag - container_name: swag_update + image: linuxserver/swag:1.31.0 + container_name: swag cap_add: - NET_ADMIN environment: diff --git a/gitea/docker-compose.yml b/gitea/docker-compose.yml index e7612f0..64a520e 100644 --- a/gitea/docker-compose.yml +++ b/gitea/docker-compose.yml @@ -1,8 +1,8 @@ version: "3" networks: - gitea: - external: false + traefik_web: + external: true services: server: @@ -18,7 +18,7 @@ services: - GITEA__database__PASSWD=gitea restart: always networks: - - gitea + - traefik_web volumes: - gitea_data:/data ports: @@ -26,6 +26,10 @@ services: - "222:22" depends_on: - db + labels: + - "traefik.enable=true" + - "traefik.http.routers.gitea.rule=Host(`gitea.montana2000.freeddns.org`)" + - "traefik.http.services.gitea-service.loadbalancer.server.port=3000" db: image: mysql:8 @@ -36,7 +40,7 @@ services: - MYSQL_PASSWORD=gitea - MYSQL_DATABASE=gitea networks: - - gitea + - traefik_web volumes: - gitea_mysql:/var/lib/mysql diff --git a/nextcloud/docker-compose.yml b/nextcloud/docker-compose.yml index 7831bec..2af8c7c 100644 --- a/nextcloud/docker-compose.yml +++ b/nextcloud/docker-compose.yml @@ -17,10 +17,11 @@ services: - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud networks: - - nginx_network + - traefik_web + app: - image: nextcloud:27.1.5 + image: nextcloud:27.1.6 container_name: nextcloud restart: always ports: @@ -35,8 +36,11 @@ services: - MYSQL_USER=nextcloud - MYSQL_HOST=nextcloud_db networks: - - nginx_network - + - traefik_web + labels: + - "traefik.enable=true" + - "traefik.http.routers.nextcloud.rule=Host(`nextcloud.montana2000.freeddns.org`)" + networks: - nginx_network: - driver: bridge + traefik_web: + external: true diff --git a/nginx/docker-compose.yml b/nginx/docker-compose.yml new file mode 100644 index 0000000..7e26bd3 --- /dev/null +++ b/nginx/docker-compose.yml @@ -0,0 +1,19 @@ +services: + nginx: + image: nginx:1.25 + labels: + - "traefik.enable=true" + - "traefik.http.routers.nginx.rule=Host(`montana2000.freeddns.org`)" + - "traefik.http.routers.nginx.middlewares=nginx-auth" + - "traefik.http.middlewares.nginx-auth.basicauth.users=nils:$$apr1$$JDBG7p8k$$LB8y6/aKcNQ/ybLz7LXjY." + networks: + - traefik_web + volumes: + - www-data:/usr/share/nginx/html/ + +volumes: + www-data: + +networks: + traefik_web: + external: true \ No newline at end of file diff --git a/traefik/docker-compose.yaml b/traefik/docker-compose.yaml new file mode 100644 index 0000000..ed98813 --- /dev/null +++ b/traefik/docker-compose.yaml @@ -0,0 +1,30 @@ +version: "3.3" + +services: + + traefik: + image: "traefik:v2.10" + container_name: "traefik" + command: + #- "--log.level=DEBUG" + - "--api.insecure=true" + - "--providers.docker=true" + - "--providers.docker.exposedbydefault=false" + - "--providers.docker.network=traefik_web" + - "--entrypoints.https.address=:443" + - "--entrypoints.https.http.tls.certResolver=le" + - "--certificatesresolvers.le.acme.tlschallenge=true" + - "--certificatesresolvers.le.acme.email=nils.grunwald@msn.com" + - "--certificatesresolvers.le.acme.storage=/letsencrypt/acme.json" + ports: + - "444:443" + - "9080:8080" + volumes: + - "./letsencrypt:/letsencrypt" + - "/var/run/docker.sock:/var/run/docker.sock:ro" + networks: + - web + +networks: + web: + name: traefik_web \ No newline at end of file