Tidy up
This commit is contained in:
1
.example.env
Normal file
1
.example.env
Normal file
@@ -0,0 +1 @@
|
||||
DOMAIN=localhost
|
||||
@@ -18,6 +18,8 @@ services:
|
||||
proxy:
|
||||
build:
|
||||
context: ./services/nginx
|
||||
args:
|
||||
DOMAIN: ${DOMAIN:?DOMAIN not set}
|
||||
networks:
|
||||
- nextcloud-frontend
|
||||
- gitea-frontend
|
||||
|
||||
@@ -21,11 +21,9 @@ Alternatively to generate a CA signed certificate (if your own a domain):
|
||||
./tools/generate_cert.bash yourdomain.com admin@email.com .
|
||||
```
|
||||
|
||||
2. Configure the host name (e.g. for `localhost`):
|
||||
2. Make a `.env` configuration file
|
||||
|
||||
```
|
||||
./tools/configure.bash localhost .
|
||||
```
|
||||
See `.example.env`.
|
||||
|
||||
3. Start the services.
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
FROM nginx:1.28-alpine
|
||||
|
||||
COPY ./default.conf /etc/nginx/conf.d/default.conf
|
||||
ARG DOMAIN
|
||||
COPY ./default.template.conf /tmp/default.template.conf
|
||||
RUN envsubst '$DOMAIN' < /tmp/default.template.conf > /etc/nginx/conf.d/default.conf
|
||||
COPY ./server.key /etc/ssl/crt/server.key
|
||||
COPY ./server.crt /etc/ssl/crt/server.crt
|
||||
|
||||
@@ -13,14 +13,17 @@ upstream php-handler {
|
||||
server {
|
||||
listen 80;
|
||||
|
||||
server_name _;
|
||||
server_name ${DOMAIN} www.${DOMAIN}
|
||||
nextcloud.${DOMAIN}
|
||||
gitea.${DOMAIN}
|
||||
redmine.${DOMAIN};
|
||||
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name gitea.yourdomain.com;
|
||||
server_name gitea.${DOMAIN};
|
||||
|
||||
ssl_certificate /etc/ssl/crt/server.crt;
|
||||
ssl_certificate_key /etc/ssl/crt/server.key;
|
||||
@@ -40,7 +43,7 @@ server {
|
||||
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name redmine.yourdomain.com;
|
||||
server_name redmine.${DOMAIN};
|
||||
|
||||
ssl_certificate /etc/ssl/crt/server.crt;
|
||||
ssl_certificate_key /etc/ssl/crt/server.key;
|
||||
@@ -53,7 +56,7 @@ server {
|
||||
# https://github.com/nextcloud/docker/blob/master/.examples/docker-compose/with-nginx-proxy/mariadb/fpm/web/nginx.conf
|
||||
server {
|
||||
listen 443 ssl;
|
||||
server_name nextcloud.yourdomain.com;
|
||||
server_name nextcloud.${DOMAIN};
|
||||
|
||||
ssl_certificate /etc/ssl/crt/server.crt;
|
||||
ssl_certificate_key /etc/ssl/crt/server.key;
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -eu
|
||||
|
||||
usage="Usage: $0 server_name project_root"
|
||||
server_name="${1:?$usage}"
|
||||
root="${2:?$usage}"
|
||||
|
||||
# Configure hostname for Nginx
|
||||
sed -Ei "s/(^[[:blank:]]*server_name [^_][^.]*\.)[^;]*/\1${server_name}/" "$root"/services/nginx/default.conf
|
||||
|
||||
# Configure hostname for Gitea
|
||||
# Note that this works only if you use a docker volume named `tvcloud_gitea` (this project default).
|
||||
gitea_conf_file=/var/lib/docker/volumes/tvcloud_gitea/_data/gitea/conf/app.init
|
||||
if [[ ! -e $gitea_conf_file ]]; then
|
||||
sudo mkdir -p "$(dirname "$gitea_conf_file")"
|
||||
sudo touch "$gitea_conf_file"
|
||||
fi
|
||||
if sudo grep -Eq "\[server\] ROOT_URL = https://gitea\." $gitea_conf_file; then
|
||||
sudo sed -Ei "s/(\[server\] ROOT_URL = https:\/\/gitea\.).*/\1$server_name/" "$gitea_conf_file"
|
||||
else
|
||||
echo "[server] ROOT_URL = https://gitea.${server_name}/" | sudo tee -a "$gitea_conf_file" >/dev/null
|
||||
fi
|
||||
Reference in New Issue
Block a user