Hello,
I’m new with Docker, so maybe someone could advice me, how to enable properly HTTPS access?
I’m trying to enable HTTPS access to our Speckle server using certificates from local CA.
While no changes, related to HTTPS enabling, were done - HTTP access worked fine and I could access Speckle server web portal.
Speckle server is running on Ubuntu 24.04. Speckle version is 2.23.4.
Traefik is used for HTTPS enabling.
Issue occurs after I’m updating “reverse-proxy” and “speckle-ingress” parts in docker-compose.yml file:
- Speckle web portal can’t be reached using neither HTTP or HTTPS (even if all containers are running and healthy).
Reverse-proxy and speckle-ingress syntax (from docker-compose.yml file) is presented below:
reverse-proxy:
image: traefik:v2.10
restart: always
command:
- “–providers.docker=true”
- “–providers.docker.exposedbydefault=false”
- “–entrypoints.websecure.address=:443”
- “–api=true”
- “–api.dashboard=true”
- “–log.level=INFO”
- “–entrypoints.web.address=:3000”
- “–entrypoints.websecure.http.tls=true”
- “–entrypoints.websecure.http.tls.certificates[0].certFile=/cert/speckletestubuntu24.crt”
- “–entrypoints.websecure.http.tls.certificates[0].keyFile=/cert/speckletestubuntu24.key”
ports:
# The HTTPS port (required for Traefik to listen to HTTPS requests)
- "443:443"
# The Traefik Web UI port if enabled by --api.insecure=true
- "8080:8080"
volumes:
- "/etc/ssl/speckle:/certs:ro"
# So that Traefik can listen to the Docker events
- "/var/run/docker.sock:/var/run/docker.sock:ro"
speckle-ingress:
image: speckle/speckle-docker-compose-ingress:2
restart: always
ports: []
# - “0.0.0.0:80:8080” #Needs to be removed according to the guide
environment:
FILE_SIZE_LIMIT_MB: “100”
NGINX_ENVSUBST_OUTPUT_DIR: “/etc/nginx”
labels:
- “traefik.enable=true”
#TODO: replace example.com
with your domain. This should just be the domain, and do not include the protocol (http/https).
- “traefik.http.routers.speckle-ingress.rule=Host(mydomain.net
)”
- “traefik.http.routers.speckle-ingress.entrypoints=websecure”
- “traefik.http.routers.speckle-ingress.tls.certresolver=myresolver”
- “traefik.http.services.speckle-ingress.loadbalancer.server.port=8080”