diff --git a/docker-compose.yml b/docker-compose.yml index 9c58618..330730a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,7 +3,7 @@ version: '3' services: traefik: - image: traefik:v2.9 + image: traefik restart: unless-stopped ports: # Read this on how to open ports @@ -11,28 +11,51 @@ services: - "80:80" - "443:443" volumes: - - C:\tmp\var\run\docker.sock:/var/run/docker.sock - - C:\traefik.yml:/etc/traefik/traefik.yml - - C:\authorized_users:/etc/traefik/authorized_users - - C:\acme.json:/acme.json + #- /var/run/docker.sock:/var/run/docker.sock + - "////./pipe/docker_engine:/var/run/docker.sock" + - ./traefik.yml:/etc/traefik/traefik.yml + - ./authorized_users:/etc/traefik/authorized_users + - ./acme.json:/acme.json labels: - "traefik.enable=true" - "traefik.http.routers.dashboard-http.entrypoints=http" - - "traefik.http.routers.dashboard-http.rule=Host(`server.ava.kb28.ch`,`server.ava.jcloud.ik-server.com`)" + - "traefik.http.routers.dashboard-http.rule=Host(`localhost/`)" - "traefik.http.routers.dashboard-http.middlewares=dashboard-redirect" - "traefik.http.middlewares.dashboard-redirect.redirectscheme.scheme=https" - "traefik.http.routers.dashboard-https.entrypoints=https" - - "traefik.http.routers.dashboard-https.rule=(Host(`server.ava.kb28.ch`,`server.ava.jcloud.ik-server.com`)) && (PathPrefix(`/api`) || PathPrefix(`/dashboard`))" + - "traefik.http.routers.dashboard-https.rule=(Host(`localhost/`)) && (PathPrefix(`/api`) || PathPrefix(`/dashboard`))" - "traefik.http.routers.dashboard-https.tls.certResolver=letsencrypt" - "traefik.http.routers.dashboard-https.service=api@internal" - "traefik.http.routers.dashboard-https.middlewares=dashboard-auth" - "traefik.http.middlewares.dashboard-auth.basicauth.usersfile=/etc/traefik/authorized_users" + command: + # Enable Docker in Traefik, so that it reads labels from Docker services + - --providers.docker + # Add a constraint to only use services with the label "traefik.constraint-label=traefik-public" + #- --providers.docker.constraints=Label(`traefik.constraint-label`, `traefik-public`) + # Do not expose all Docker services, only the ones explicitly exposed + #- --providers.docker.exposedbydefault=false + # Enable Docker Swarm mode + - --providers.docker.swarmmode + # Create an entrypoint "http" listening on port 80 + - --entrypoints.http.address=:80 + # Create an entrypoint "https" listening on port 443 + - --entrypoints.https.address=:443 + # Create the certificate resolver "le" for Let's Encrypt, uses the environment variable EMAIL + #- --certificatesresolvers.le.acme.email='cboivin@secure-exchanges.com'#$EMAIL + # Store the Let's Encrypt certificates in the mounted volume + #- --certificatesresolvers.le.acme.storage=/certificates/acme.json + # Use the TLS Challenge for Let's Encrypt + #- --certificatesresolvers.le.acme.tlschallenge=true + # Enable the access log, with HTTP requests + - --accesslog + # Enable the Traefik log, for configurations and errors + - --log + # Enable the Dashboard and API + - --api.insecure=true - ubuntu-test: - build: ./ubuntu-test - restart: unless-stopped - ports: - - '25057:22' + # Docker engine + - --providers.docker.endpoint=npipe:////./pipe/docker_engine ollama: image: ollama/ollama @@ -41,14 +64,14 @@ services: ports: - '11434:11434' volumes: - - 'C:\tmp\ollama:/root/.ollama' + - './ollama:/root/.ollama' ollama-webui: image: 'ghcr.io/ollama-webui/ollama-webui:main' restart: unless-stopped container_name: ollama-webui volumes: - - 'C:\tmp\ollama-webui:/app/backend/data' + - './ollama-webui:/app/backend/data' depends_on: - ollama ports: @@ -60,11 +83,11 @@ services: labels: - "traefik.enable=true" - "traefik.http.routers.ollama-webui-http.entrypoints=http" - - "traefik.http.routers.ollama-webui-http.rule=Host(`ollama.ava.kb28.ch`,`ollama.ava.jcloud.ik-server.com`)" + - "traefik.http.routers.ollama-webui-http.rule=Host(`ollama.localhost/`)" - "traefik.http.routers.ollama-webui-http.middlewares=ollama-webui-redirect" - "traefik.http.middlewares.ollama-webui-redirect.redirectscheme.scheme=https" - "traefik.http.routers.ollama-webui-https.entrypoints=https" - - "traefik.http.routers.ollama-webui-https.rule=Host(`ollama.ava.kb28.ch`,`ollama.ava.jcloud.ik-server.com`)" + - "traefik.http.routers.ollama-webui-https.rule=Host(`ollama.localhost/`)" - "traefik.http.routers.ollama-webui-https.tls.certResolver=letsencrypt" - "traefik.http.routers.ollama-webui-https.service=ollama-webui" - "traefik.http.routers.ollama-webui-https.middlewares=ollama-webui-auth"