This commit is contained in:
CanbiZ 2025-05-21 14:58:16 +02:00
parent f554b54c4d
commit 1fd66479f6
2 changed files with 31 additions and 30 deletions

View File

@ -15,10 +15,6 @@ update_os
msg_info "Installing Dependencies"
$STD apt-get install -y \
gpg \
curl \
sudo \
mc \
gcc \
libpq-dev \
libcurl4-openssl-dev \
@ -27,16 +23,12 @@ msg_ok "Installed Dependencies"
msg_info "Setup Python3"
$STD apt-get install -y \
python3 python3-dev python3-venv python3-pip
python3 python3-dev
$STD pip install --upgrade pip
msg_ok "Setup Python3"
msg_info "Setting up PostgreSQL Repository"
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg
echo "deb https://apt.postgresql.org/pub/repos/apt bookworm-pgdg main" >/etc/apt/sources.list.d/pgdg.list
$STD apt-get update
$STD apt-get install -y postgresql-17
msg_ok "Set up PostgreSQL Repository"
setup_uv
PG_VERSION=16 install_postgresql
msg_info "Setup Database"
DB_NAME=healthchecks_db
@ -60,31 +52,41 @@ msg_ok "Set up Database"
msg_info "Setup healthchecks"
cd /opt
RELEASE=$(curl -s https://api.github.com/repos/healthchecks/healthchecks/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/healthchecks/healthchecks/archive/refs/tags/v${RELEASE}.zip"
curl -fsSL "https://github.com/healthchecks/healthchecks/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
unzip -q v${RELEASE}.zip
mv healthchecks-${RELEASE} /opt/healthchecks
cd /opt/healthchecks
pip install --upgrade pip
pip install wheel
pip install -r requirements.txt
CAT EOF
python3 -m venv hc-venv
source hc-venv/bin/activate
pip3 install wheel
pip install -r requirements.txt
$STD uv venv .venv
$STD source .venv/bin/activate
$STD uv pip install wheel
$STD uv pip install -r requirements.txt
cat <<EOF >/opt/healthchecks/.env
ALLOWED_HOSTS=localhost
DB=postgres
DB_HOST=localhost
DB_PORT=5432
DB_NAME=${DB_NAME}
DB_USER=${DB_USER}
DB_PASSWORD=${DB_PASS}
DB_CONN_MAX_AGE=0
DB_SSLMODE=prefer
DB_TARGET_SESSION_ATTRS=read-write
DEFAULT_FROM_EMAIL=healthchecks@example.org
EMAIL_HOST=
EMAIL_HOST_PASSWORD=
EMAIL_HOST_USER=
EMAIL_PORT=587
EMAIL_USE_TLS=True
EMAIL_USE_VERIFICATION=True
# Django & Healthchecks Konfiguration
SECRET_KEY=${SECRET_KEY}
DEBUG=False
ALLOWED_HOSTS=your.domain.com
SITE_ROOT=https://your.domain.com
SITE_ROOT=http://localhost:8000
SITE_NAME=Mychecks
SITE_ROOT=http://localhost:8000
EOF
source /opt/healthchecks/venv/bin/activate
@ -99,7 +101,6 @@ user.save()
EOF
./manage.py createsuperuser
msg_ok "Installed healthchecks"
msg_info "Creating Service"
@ -110,7 +111,7 @@ After=network.target postgresql.service
[Service]
WorkingDirectory=/opt/healthchecks/
ExecStart=python3 manage.py runserver 0.0.0.0:8000
ExecStart=/opt/healthchecks/.venv/bin/python3 manage.py runserver 0.0.0.0:8000
Restart=always
EnvironmentFile=/opt/healthchecks/.env