pve-docker/entrypoint.sh

70 lines
1.5 KiB
Bash
Raw Normal View History

2023-11-14 10:45:50 +01:00
#!/bin/bash
set -eo pipefail
shopt -s nullglob
# logging functions
pve_log() {
local type="$1"; shift
printf '%s [%s] [Entrypoint]: %s\n' "$(date --rfc-3339=seconds)" "$type" "$*"
}
pve_note() {
pve_log Note "$@"
}
pve_warn() {
pve_log Warn "$@" >&2
}
pve_error() {
pve_log ERROR "$@" >&2
exit 1
}
# Verify that the minimally required password settings are set for new databases.
docker_verify_minimum_env() {
if [ -z "$ADMIN_PASSWORD" ]; then
pve_error $'Password option is not specified\n\tYou need to specify an ADMIN_PASSWORD'
fi
}
docker_setup_pve() {
#Set pve user
echo "root:$ADMIN_PASSWORD"|chpasswd
}
RELAY_HOST=${RELAY_HOST:-ext.home.local}
sed -i "s/RELAY_HOST/$RELAY_HOST/" /etc/postfix/main.cf
PVE_ENTERPRISE=${PVE_ENTERPRISE:-no}
if [ "$PVE_ENTERPRISE" != "yes" ]; then
rm -f /etc/apt/sources.list.d/pve-enterprise.list
fi
docker_verify_minimum_env
# Start api first in background
#echo -n "Starting Proxmox VE API..."
#/usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-backup-api &
#while true; do
# if [ ! -f /run/proxmox-backup/api.pid ]; then
# echo -n "..."
# sleep 3
# else
# break
# fi
#done
#echo "OK"
docker_setup_pve
2023-11-14 16:31:36 +01:00
if [ ! -d /var/log/pveproxy ]; then
mkdir -p /var/log/pveproxy
chmod 777 /var/log/pveproxy
fi
if [ -n "$ENABLE_PVE_FIREWALL" -a "$ENABLE_PVE_FIREWALL" == "no" ]; then
systemctl mask pve-firewall.service
fi
2023-11-14 10:45:50 +01:00
echo "Running PVE..."
exec "$@"
#exec gosu backup /usr/lib/x86_64-linux-gnu/proxmox-backup/proxmox-backup-proxy "$@"