This repository was archived by the owner on Oct 10, 2025. It is now read-only.
Commit 9af19e6
committed
feat: [#21] implement complete HTTPS automation with self-signed certificates
- Enable HTTPS by default in deployment (ENABLE_HTTPS=true)
- Fix Docker Compose SSL certificate volume mappings:
- Mount /var/lib/torrust/proxy/certs to /etc/ssl/certs (was incorrectly mapped to dhparam)
- Mount /var/lib/torrust/proxy/private to /etc/ssl/private
- Move dhparam to /etc/ssl/dhparam to avoid conflicts
- Fix nginx HTTPS template variable escaping for envsubst:
- Replace all nginx variables () with ${DOLLAR}var to prevent envsubst processing
- Ensures proper nginx variable substitution in generated config
- Update deployment script for streamlined SSL certificate generation:
- Generate 10-year self-signed certificates directly on VM using openssl
- Switch domain from tracker-demo.local to test.local for consistency
- Remove complex container-based certificate generation (chicken-egg problem)
- Add comprehensive HTTPS connection info with /etc/hosts instructions
- Implement complete twelve-factor deployment workflow:
- Infrastructure provisioning (make infra-apply)
- Application deployment with HTTPS (make app-deploy)
- Health validation and connection info display
Deployment now provides both HTTP and HTTPS endpoints:
- HTTP: tracker.test.local, grafana.test.local (via nginx proxy)
- HTTPS: Same domains with 10-year self-signed certificates
- Direct access: VM IP for debugging/monitoring
Resolves certificate chicken-egg problem by generating certificates on host
before container startup, enabling automated HTTPS deployment without manual steps.1 parent 331ba20 commit 9af19e6
File tree
3 files changed
+70
-32
lines changed- application
- infrastructure
- config/templates
- scripts
3 files changed
+70
-32
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
| 31 | + | |
30 | 32 | | |
31 | 33 | | |
32 | 34 | | |
33 | | - | |
| 35 | + | |
34 | 36 | | |
35 | 37 | | |
36 | 38 | | |
| |||
Lines changed: 23 additions & 23 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| |||
102 | 102 | | |
103 | 103 | | |
104 | 104 | | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
114 | | - | |
115 | | - | |
| 114 | + | |
| 115 | + | |
116 | 116 | | |
117 | 117 | | |
118 | 118 | | |
| |||
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
142 | | - | |
| 142 | + | |
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
| |||
157 | 157 | | |
158 | 158 | | |
159 | 159 | | |
160 | | - | |
| 160 | + | |
161 | 161 | | |
162 | 162 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
| 17 | + | |
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
| |||
344 | 344 | | |
345 | 345 | | |
346 | 346 | | |
347 | | - | |
| 347 | + | |
348 | 348 | | |
349 | 349 | | |
350 | 350 | | |
| |||
362 | 362 | | |
363 | 363 | | |
364 | 364 | | |
365 | | - | |
| 365 | + | |
366 | 366 | | |
367 | 367 | | |
368 | 368 | | |
| |||
402 | 402 | | |
403 | 403 | | |
404 | 404 | | |
405 | | - | |
| 405 | + | |
406 | 406 | | |
407 | 407 | | |
408 | 408 | | |
| |||
428 | 428 | | |
429 | 429 | | |
430 | 430 | | |
431 | | - | |
432 | | - | |
433 | | - | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
434 | 436 | | |
435 | 437 | | |
436 | 438 | | |
437 | | - | |
| 439 | + | |
438 | 440 | | |
439 | 441 | | |
440 | 442 | | |
| |||
807 | 809 | | |
808 | 810 | | |
809 | 811 | | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
| 815 | + | |
| 816 | + | |
| 817 | + | |
| 818 | + | |
| 819 | + | |
| 820 | + | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
810 | 829 | | |
811 | 830 | | |
812 | 831 | | |
| |||
911 | 930 | | |
912 | 931 | | |
913 | 932 | | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
| 947 | + | |
| 948 | + | |
| 949 | + | |
914 | 950 | | |
915 | 951 | | |
916 | 952 | | |
| |||
0 commit comments