ProxmoxVE/install/nginxproxymanager-install.sh
oOStroudyOo 53ed69e090 Squashed commit of the following:
commit 995fa24aaffa98b8e12e8ebe084cbce61f605995
Author: oOStroudyOo <111181956+oOStroudyOo@users.noreply.github.com>
Date:   Mon Dec 23 14:41:35 2024 +0000

    Improve motd

    Added gold colour.
    Added TABS (A longer version of TAB for central heading / Reduced code).
    Added building icon.
    Added hammer and spanner icon (GitHub).
    Change LXC Container title to more central location and in gold.
    Added website URL.
    Split the lines to show Org, Website and GitHub on separate lines.
    Change Org icon to building.
    Added the hammer and spanner emoji to GitHub line.
    Changed IP icon from idea to network.
    Added line break under the title for better readability.
    Added line break under the IP address for better readability.

commit 0d18fb33ce
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Sun Dec 22 10:45:03 2024 +0100

    Update navidrome-install.sh

commit 003f7c3ab4
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Sun Dec 22 10:42:47 2024 +0100

    Update navidrome.sh

commit 525362f3c5
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Fri Dec 20 09:20:20 2024 +0100

    Changes

commit 9e6770f03b
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Fri Dec 20 09:14:04 2024 +0100

    Change to dpkg -i

commit 775ed987db
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Thu Dec 19 15:33:28 2024 +0100

    New Script: CheckMk

commit 8950eb302e
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Thu Dec 19 09:48:05 2024 +0100

    Update apache-guacamole-install.sh

commit 3ac7c9093b
Merge: 9ae03880 75772753
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Thu Dec 19 09:28:30 2024 +0100

    Merge branch 'develop' of https://github.com/community-scripts/ProxmoxVE into develop

commit 9ae03880a4
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Thu Dec 19 09:28:13 2024 +0100

    Update Bookstack for testing

commit 757727537b
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 16:37:01 2024 +0100

    Update apache-guacamole-install.sh

commit 7e2b1fd87f
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 15:05:32 2024 +0100

    Suppres output

commit c00c17290e
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 14:10:01 2024 +0100

    Update zammad-install.sh

commit 66fafe2b10
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 14:00:00 2024 +0100

    Update zammad-install.sh

commit c85462809d
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 13:56:31 2024 +0100

    Update zammad-install.sh

commit 887c70c35a
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 13:47:11 2024 +0100

    Update zammad-install.sh

commit d87f3f777b
Author: Michel Roegl-Brunner <michel.roegl-brunner@htl-braunau.at>
Date:   Wed Dec 18 13:05:49 2024 +0100

    Push Zammad and Apache Guacamole

commit ef3bb43405
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 12:30:24 2024 +0100

    fix paths to tmp

commit b6104103cb
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:21:29 2024 +0100

    Update build.func

commit fbb1b7d88a
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:12:32 2024 +0100

    Update authentik.sh

commit daba45f93a
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:07:28 2024 +0100

    Add files via upload

commit a13c0617b2
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:07:02 2024 +0100

    Update authentik.sh

commit 934f989f10
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:03:12 2024 +0100

    Update authentik.sh

commit c1b2476a30
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Wed Dec 18 10:02:52 2024 +0100

    Add files via upload

commit b7e00c4885
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 13 11:42:19 2024 +0100

    dev

commit daf650be1f
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 13 11:40:40 2024 +0100

    test

commit 5a3dca218e
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Tue Dec 10 14:41:59 2024 +0100

    Update alpine-vaultwarden-install.sh

commit b4c59c7044
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Tue Dec 10 09:44:54 2024 +0100

    Update nginxproxymanager.sh

commit 9ef229b90a
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Tue Dec 10 09:29:21 2024 +0100

    Update nginxproxymanager-install.sh

commit e6361570b3
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Tue Dec 10 09:23:56 2024 +0100

    Update keycloak.sh

commit f901cd55dd
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 13:16:27 2024 +0100

    Update build.func

commit 02a0d16bee
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 13:14:36 2024 +0100

    Update build.func

commit e30f96e038
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 11:26:35 2024 +0100

    switch *arr to arr

commit 90246d1537
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:38:14 2024 +0100

    add space option

commit 693ad497f6
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:35:19 2024 +0100

    update motd for OS_version/name

commit 107243d576
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:34:15 2024 +0100

    remove project in motd

commit e65593751c
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:32:15 2024 +0100

    noCancel

commit 7fc60c9039
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:23:24 2024 +0100

    switch nocancel

commit ef837ab8b9
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:21:25 2024 +0100

    Update build.func

commit 37b398a5c9
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:20:24 2024 +0100

    Update build.func

commit 6ea43228c4
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:16:10 2024 +0100

    Update build.func

commit 8d89c107f9
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:08:57 2024 +0100

    Update build.func

commit 6e90b44e7e
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:08:47 2024 +0100

    Update build.func

commit 4c2965f850
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 10:06:34 2024 +0100

    Update build.func

commit 29209dbee6
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:57:47 2024 +0100

    Update build.func

commit 63be70cc25
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:50:49 2024 +0100

    Update build.func

commit 02ded1ee47
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:46:39 2024 +0100

    Update build.func

commit b42d5c6a57
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:41:04 2024 +0100

    Update build.func

commit 9e90ab1921
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:39:16 2024 +0100

    Update build.func

commit 03301f12d2
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:36:00 2024 +0100

    Update build.func

commit d10c404b60
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:24:57 2024 +0100

    Update create_lxc.sh

commit b72eb02fde
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:19:32 2024 +0100

    space for spinner

commit 542c4f703b
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:11:02 2024 +0100

    Update install.func

commit 0f914e5ad7
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 09:06:49 2024 +0100

    TAGS > var_tags

commit d270b5535d
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 08:59:15 2024 +0100

    fix space in spinner

commit ffca06575e
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Mon Dec 9 08:58:22 2024 +0100

    fix space in  spinner

commit d73c19f5cd
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Sat Dec 7 22:10:22 2024 +0100

    Fix Ressource-Check for other languages

commit f107a60062
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Sat Dec 7 11:41:13 2024 +0100

    netbox HTTPS instead http

commit f6604e09d4
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:31:00 2024 +0100

    fix for dev branch

commit 8063b68434
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:28:44 2024 +0100

    Update install.func

commit c0ff715175
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:28:19 2024 +0100

    Update create_lxc.sh

commit ae614234df
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:26:57 2024 +0100

    prepare for develop branch

commit 0141f3fc86
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:24:05 2024 +0100

    Update build.func

commit 6d390bbd78
Author: CanbiZ <47820557+MickLesk@users.noreply.github.com>
Date:   Fri Dec 6 15:19:58 2024 +0100

    Full Update
2024-12-23 15:14:53 +00:00

209 lines
6.4 KiB
Bash

#!/usr/bin/env bash
# Copyright (c) 2021-2024 tteck
# Author: tteck (tteckster)
# License: MIT
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt-get update
$STD apt-get -y install \
sudo \
mc \
curl \
gnupg \
make \
gcc \
g++ \
ca-certificates \
apache2-utils \
logrotate \
build-essential \
git
msg_ok "Installed Dependencies"
msg_info "Installing Python Dependencies"
$STD apt-get install -y \
python3 \
python3-dev \
python3-pip \
python3-venv \
python3-cffi \
python3-certbot \
python3-certbot-dns-cloudflare
$STD pip3 install certbot-dns-multi
$STD python3 -m venv /opt/certbot/
rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
msg_ok "Installed Python Dependencies"
VERSION="$(awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release)"
msg_info "Installing Openresty"
wget -qO - https://openresty.org/package/pubkey.gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg
echo -e "deb http://openresty.org/package/debian bullseye openresty" >/etc/apt/sources.list.d/openresty.list
$STD apt-get update
$STD apt-get -y install openresty
msg_ok "Installed Openresty"
msg_info "Installing Node.js"
$STD bash <(curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh)
source ~/.bashrc
$STD nvm install 16.20.2
ln -sf /root/.nvm/versions/node/v16.20.2/bin/node /usr/bin/node
msg_ok "Installed Node.js"
msg_info "Installing pnpm"
$STD npm install -g pnpm@8.15
msg_ok "Installed pnpm"
RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
grep "tag_name" |
awk '{print substr($2, 3, length($2)-4) }')
read -r -p "Would you like to install an older version (v2.10.4)? <y/N> " prompt
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
msg_info "Downloading Nginx Proxy Manager v2.10.4"
wget -q https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v2.10.4 -O - | tar -xz
cd ./nginx-proxy-manager-2.10.4
msg_ok "Downloaded Nginx Proxy Manager v2.10.4"
else
msg_info "Downloading Nginx Proxy Manager v${RELEASE}"
wget -q https://codeload.github.com/NginxProxyManager/nginx-proxy-manager/tar.gz/v${RELEASE} -O - | tar -xz
cd ./nginx-proxy-manager-${RELEASE}
msg_ok "Downloaded Nginx Proxy Manager v${RELEASE}"
fi
msg_info "Setting up Environment"
ln -sf /usr/bin/python3 /usr/bin/python
ln -sf /usr/bin/certbot /opt/certbot/bin/certbot
ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx
ln -sf /usr/local/openresty/nginx/ /etc/nginx
if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"2.10.4\"|" backend/package.json
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"2.10.4\"|" frontend/package.json
else
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" backend/package.json
sed -i "s|\"version\": \"0.0.0\"|\"version\": \"$RELEASE\"|" frontend/package.json
fi
sed -i 's|"fork-me": ".*"|"fork-me": "Proxmox VE Helper-Scripts"|' frontend/js/i18n/messages.json
sed -i "s|https://github.com.*source=nginx-proxy-manager|https://helper-scripts.com|g" frontend/js/app/ui/footer/main.ejs
sed -i 's+^daemon+#daemon+g' docker/rootfs/etc/nginx/nginx.conf
NGINX_CONFS=$(find "$(pwd)" -type f -name "*.conf")
for NGINX_CONF in $NGINX_CONFS; do
sed -i 's+include conf.d+include /etc/nginx/conf.d+g' "$NGINX_CONF"
done
mkdir -p /var/www/html /etc/nginx/logs
cp -r docker/rootfs/var/www/html/* /var/www/html/
cp -r docker/rootfs/etc/nginx/* /etc/nginx/
cp docker/rootfs/etc/letsencrypt.ini /etc/letsencrypt.ini
cp docker/rootfs/etc/logrotate.d/nginx-proxy-manager /etc/logrotate.d/nginx-proxy-manager
ln -sf /etc/nginx/nginx.conf /etc/nginx/conf/nginx.conf
rm -f /etc/nginx/conf.d/dev.conf
mkdir -p /tmp/nginx/body \
/run/nginx \
/data/nginx \
/data/custom_ssl \
/data/logs \
/data/access \
/data/nginx/default_host \
/data/nginx/default_www \
/data/nginx/proxy_host \
/data/nginx/redirection_host \
/data/nginx/stream \
/data/nginx/dead_host \
/data/nginx/temp \
/var/lib/nginx/cache/public \
/var/lib/nginx/cache/private \
/var/cache/nginx/proxy_temp
chmod -R 777 /var/cache/nginx
chown root /tmp/nginx
echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" {print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf);" >/etc/nginx/conf.d/include/resolvers.conf
if [ ! -f /data/nginx/dummycert.pem ] || [ ! -f /data/nginx/dummykey.pem ]; then
openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 -subj "/O=Nginx Proxy Manager/OU=Dummy Certificate/CN=localhost" -keyout /data/nginx/dummykey.pem -out /data/nginx/dummycert.pem &>/dev/null
fi
mkdir -p /app/global /app/frontend/images
cp -r backend/* /app
cp -r global/* /app/global
msg_ok "Set up Enviroment"
msg_info "Building Frontend"
cd ./frontend
$STD yarn cache clean --silent --force
$STD yarn install --silent --network-timeout=30000
$STD yarn build
cp -r dist/* /app/frontend
cp -r app-images/* /app/frontend/images
msg_ok "Built Frontend"
msg_info "Initializing Backend"
rm -rf /app/config/default.json
if [ ! -f /app/config/production.json ]; then
cat <<'EOF' >/app/config/production.json
{
"database": {
"engine": "knex-native",
"knex": {
"client": "sqlite3",
"connection": {
"filename": "/data/database.sqlite"
}
}
}
}
EOF
fi
cd /app
$STD pnpm install
msg_ok "Initialized Backend"
msg_info "Creating Service"
cat <<'EOF' >/lib/systemd/system/npm.service
[Unit]
Description=Nginx Proxy Manager
After=network.target
Wants=openresty.service
[Service]
Type=simple
Environment=NODE_ENV=production
ExecStartPre=-mkdir -p /tmp/nginx/body /data/letsencrypt-acme-challenge
ExecStart=/usr/bin/node index.js --abort_on_uncaught_exception --max_old_space_size=250
WorkingDirectory=/app
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
msg_ok "Created Service"
motd_ssh
customize
msg_info "Starting Services"
sed -i 's/user npm/user root/g; s/^pid/#pid/g' /usr/local/openresty/nginx/conf/nginx.conf
sed -r -i 's/^([[:space:]]*)su npm npm/\1#su npm npm/g;' /etc/logrotate.d/nginx-proxy-manager
sed -i 's/include-system-site-packages = false/include-system-site-packages = true/g' /opt/certbot/pyvenv.cfg
systemctl enable -q --now openresty
systemctl enable -q --now npm
msg_ok "Started Services"
msg_info "Cleaning up"
rm -rf ../nginx-proxy-manager-*
systemctl restart openresty
$STD apt-get -y autoremove
$STD apt-get -y autoclean
msg_ok "Cleaned"