Merge pull request #1837 from AminGholizad/submit/koffan

feat: add koffan
This commit is contained in:
Michel Roegl-Brunner
2026-06-01 14:06:00 +02:00
committed by GitHub
4 changed files with 176 additions and 0 deletions

63
install/koffan-install.sh Normal file
View File

@@ -0,0 +1,63 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2026 community-scripts ORG
# Author: (AminGholizad)
# License: MIT | https://github.com/AminGholizad/ProxmoxVED/raw/main/LICENSE
# Source: https://github.com/PanSalut/Koffan
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
ensure_dependencies build-essential
setup_go
msg_ok "Installed Dependencies"
fetch_and_deploy_gh_release "koffan" "PanSalut/Koffan" "tarball"
msg_info "Building Koffan"
cd /opt/koffan
go build -o koffan main.go
msg_ok "Built Koffan"
msg_info "Configuring Koffan"
PASSWORD=$(openssl rand -base64 12)
mkdir /opt/koffan/data
cat <<EOF >/opt/koffan/data/.env
APP_ENV=production
APP_PASSWORD=${PASSWORD}
PORT=3000
DB_PATH=/opt/koffan/data/shopping.db
EOF
cat <<EOF >~/koffan.creds
Password: ${PASSWORD}
EOF
msg_ok "Configured Koffan"
msg_info "Creating systemd service"
cat <<EOF >/etc/systemd/system/koffan.service
[Unit]
Description=Koffan Service
After=network.target
[Service]
EnvironmentFile=/opt/koffan/data/.env
WorkingDirectory=/opt/koffan
ExecStart=/opt/koffan/koffan
Restart=always
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now koffan
msg_ok "Created systemd service"
motd_ssh
customize
cleanup_lxc