Skip to content
This repository was archived by the owner on Nov 23, 2022. It is now read-only.

Commit ad84749

Browse files
committed
Fix http to https redirect logic (harder than it seems :| )
1 parent d02853a commit ad84749

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/docker/start.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,10 @@ exports.startFromParams = async ({
8080
Labels[`traefik.http.middlewares.${name}-https.redirectscheme.scheme`] = 'https';
8181
Labels[`traefik.http.routers.${name}.tls.certresolver`] = 'exoframeChallenge';
8282
Labels[`traefik.http.routers.${name}.entrypoints`] = 'websecure';
83+
// redirect http to https
84+
Labels[`traefik.http.middlewares.${name}-redirect.redirectscheme.scheme`] = 'https';
85+
Labels[`traefik.http.routers.${name}-web.entrypoints`] = 'web';
86+
Labels[`traefik.http.routers.${name}-web.middlewares`] = `${name}-redirect@docker`;
8387
middlewares.push(`${name}-https@docker`);
8488
}
8589

@@ -99,6 +103,7 @@ exports.startFromParams = async ({
99103
}
100104
Labels[`traefik.http.services.${projectName}.loadbalancer.server.port`] = String(port);
101105
Labels[`traefik.http.routers.${name}.rule`] = frontend;
106+
Labels[`traefik.http.routers.${name}-web.rule`] = frontend;
102107
}
103108

104109
// remove or stringify all middlewares
@@ -240,6 +245,10 @@ exports.start = async ({image, username, folder, resultStream, existing = []}) =
240245
Labels[`traefik.http.middlewares.${name}-https.redirectscheme.scheme`] = 'https';
241246
Labels[`traefik.http.routers.${name}.tls.certresolver`] = 'exoframeChallenge';
242247
Labels[`traefik.http.routers.${name}.entrypoints`] = 'websecure';
248+
// redirect http to https
249+
Labels[`traefik.http.middlewares.${name}-redirect.redirectscheme.scheme`] = 'https';
250+
Labels[`traefik.http.routers.${name}-web.entrypoints`] = 'web';
251+
Labels[`traefik.http.routers.${name}-web.middlewares`] = `${name}-redirect@docker`;
243252
middlewares.push(`${name}-https@docker`);
244253
}
245254

@@ -259,7 +268,9 @@ exports.start = async ({image, username, folder, resultStream, existing = []}) =
259268
logger.debug('Detected deployment port:', port);
260269
}
261270
Labels[`traefik.http.services.${project}.loadbalancer.server.port`] = String(port);
262-
Labels[`traefik.http.routers.${name}.rule`] = host.includes('Host(') ? host : `Host(\`${host}\`)`;
271+
const rule = host.includes('Host(') ? host : `Host(\`${host}\`)`;
272+
Labels[`traefik.http.routers.${name}.rule`] = rule;
273+
Labels[`traefik.http.routers.${name}-web.rule`] = rule;
263274
}
264275

265276
// if rate-limit is set - add it to config

0 commit comments

Comments
 (0)