Skip to content

Commit ac91f17

Browse files
authored
πŸ”¨ Refactor nginx config with template (#55)
* πŸ”¨ Refactor nginx config with template * πŸ”¨ Linting
1 parent 568a1cc commit ac91f17

File tree

8 files changed

+34
-49
lines changed

8 files changed

+34
-49
lines changed

β€Žbookstack/config.jsonβ€Ž

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
"webui": "[PROTO:ssl]://[HOST]:[PORT:80]",
88
"init": false,
99
"arch": ["aarch64", "amd64", "armhf", "armv7", "i386"],
10-
"hassio_api": true,
1110
"services": ["mysql:want"],
1211
"map": ["ssl"],
1312
"ports": {

β€Žbookstack/rootfs/etc/cont-init.d/nginx.shβ€Ž

Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,14 @@
33
# Home Assistant Community Add-on: Bookstack
44
# This file configures nginx
55
# ==============================================================================
6-
declare admin_port
7-
declare certfile
8-
declare dns_host
9-
declare keyfile
106

11-
admin_port=$(bashio::addon.port 80)
12-
if bashio::var.has_value "${admin_port}"; then
7+
if bashio::var.has_value "$(bashio::addon.port 80)"; then
138
bashio::config.require.ssl
14-
15-
if bashio::config.true 'ssl'; then
16-
certfile=$(bashio::config 'certfile')
17-
keyfile=$(bashio::config 'keyfile')
18-
19-
mv /etc/nginx/servers/direct-ssl.disabled /etc/nginx/servers/direct.conf
20-
sed -i "s#%%certfile%%#${certfile}#g" /etc/nginx/servers/direct.conf
21-
sed -i "s#%%keyfile%%#${keyfile}#g" /etc/nginx/servers/direct.conf
22-
else
23-
mv /etc/nginx/servers/direct.disabled /etc/nginx/servers/direct.conf
24-
fi
25-
sed -i "s/%%port%%/80/g" /etc/nginx/servers/direct.conf
9+
bashio::var.json \
10+
certfile "$(bashio::config 'certfile')" \
11+
keyfile "$(bashio::config 'keyfile')" \
12+
ssl "^$(bashio::config 'ssl')" \
13+
| tempio \
14+
-template /etc/nginx/templates/direct.gtpl \
15+
-out /etc/nginx/servers/direct.conf
2616
fi
27-
28-
dns_host=$(bashio::dns.host)
29-
sed -i "s/%%dns_host%%/${dns_host}/g" /etc/nginx/includes/resolver.conf

β€Žbookstack/rootfs/etc/nginx/includes/resolver.confβ€Ž

Lines changed: 0 additions & 1 deletion
This file was deleted.

β€Žbookstack/rootfs/etc/nginx/nginx.confβ€Ž

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,6 @@ pcre_jit on;
1616
# Write error log to the add-on log.
1717
error_log /proc/1/fd/1 error;
1818

19-
# Load allowed environment vars
20-
env SUPERVISOR_TOKEN;
21-
env DISABLE_HA_AUTHENTICATION;
22-
23-
# Load dynamic modules.
24-
include /etc/nginx/modules/*.conf;
25-
2619
# Max num of simultaneous connections by a worker process.
2720
events {
2821
worker_connections 512;
@@ -50,7 +43,6 @@ http {
5043
'' close;
5144
}
5245

53-
include /etc/nginx/includes/resolver.conf;
5446
include /etc/nginx/includes/upstream.conf;
5547

5648
include /etc/nginx/servers/*.conf;
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Without requirements or design, programming is the art of adding bugs to an empty text file. (Louis Srygley)

β€Žbookstack/rootfs/etc/nginx/servers/direct-ssl.disabledβ€Ž

Lines changed: 0 additions & 11 deletions
This file was deleted.

β€Žbookstack/rootfs/etc/nginx/servers/direct.disabledβ€Ž

Lines changed: 0 additions & 7 deletions
This file was deleted.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
server {
2+
{{ if not .ssl }}
3+
listen 80 default_server;
4+
{{ else }}
5+
listen 80 default_server ssl http2;
6+
{{ end }}
7+
8+
include /etc/nginx/includes/server_params.conf;
9+
include /etc/nginx/includes/php.conf;
10+
11+
{{ if .ssl }}
12+
include /etc/nginx/includes/ssl_params.conf;
13+
14+
ssl_certificate /ssl/{{ .certfile }};
15+
ssl_certificate_key /ssl/{{ .keyfile }};
16+
{{ end }}
17+
18+
location ~ .php$ {
19+
fastcgi_pass 127.0.0.1:9001;
20+
fastcgi_read_timeout 900;
21+
fastcgi_split_path_info ^(.+\.php)(/.+)$;
22+
fastcgi_index index.php;
23+
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
24+
}
25+
}

0 commit comments

Comments
Β (0)