mirror of
https://github.com/community-scripts/ProxmoxVED.git
synced 2026-02-25 14:05:54 +00:00
Update Investbrain installation script and improve backup management
This commit is contained in:
@@ -33,12 +33,13 @@ NODE_VERSION="22" setup_nodejs
|
||||
PG_VERSION="17" setup_postgresql
|
||||
PG_DB_NAME="investbrain" PG_DB_USER="investbrain" setup_postgresql_db
|
||||
|
||||
msg_info "Installing Investbrain"
|
||||
mkdir -p /opt/investbrain
|
||||
fetch_and_deploy_gh_release "Investbrain" "investbrainapp/investbrain" "tarball" "latest" "/opt/investbrain"
|
||||
LOCAL_IP=$(hostname -I | awk '{print $1}')
|
||||
APP_KEY=$(openssl rand -base64 32)
|
||||
|
||||
msg_info "Installing Investbrain (Patience)"
|
||||
cd /opt/investbrain
|
||||
cat <<EOF >/opt/investbrain/.env
|
||||
APP_KEY=base64:${APP_KEY}
|
||||
APP_PORT=8000
|
||||
@@ -91,43 +92,24 @@ MAIL_FROM_ADDRESS="investbrain@${LOCAL_IP}"
|
||||
|
||||
VITE_APP_NAME=Investbrain
|
||||
EOF
|
||||
|
||||
msg_ok "Setup Investbrain"
|
||||
|
||||
msg_info "Installing Investbrain (Patience)"
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --no-interaction --no-dev --optimize-autoloader
|
||||
$STD npm install
|
||||
$STD npm run build
|
||||
msg_ok "Installed Investbrain"
|
||||
|
||||
msg_info "Setting up Storage"
|
||||
mkdir -p /opt/investbrain/storage/framework/cache
|
||||
mkdir -p /opt/investbrain/storage/framework/sessions
|
||||
mkdir -p /opt/investbrain/storage/framework/views
|
||||
mkdir -p /opt/investbrain/storage/app
|
||||
mkdir -p /opt/investbrain/storage/logs
|
||||
chmod -R 775 /opt/investbrain/storage
|
||||
chown -R www-data:www-data /opt/investbrain/storage
|
||||
msg_ok "Setup Storage"
|
||||
|
||||
msg_info "Running Migrations"
|
||||
mkdir -p /opt/investbrain/storage/{framework/cache,framework/sessions,framework/views,app,logs}
|
||||
$STD php artisan migrate --force
|
||||
$STD php artisan storage:link
|
||||
msg_ok "Ran Migrations"
|
||||
|
||||
msg_info "Clearing and Caching"
|
||||
$STD php artisan cache:clear
|
||||
$STD php artisan view:clear
|
||||
$STD php artisan route:clear
|
||||
$STD php artisan event:clear
|
||||
$STD php artisan route:cache
|
||||
$STD php artisan event:cache
|
||||
chown -R www-data:www-data /opt/investbrain
|
||||
chmod -R 755 /opt/investbrain/bootstrap/cache
|
||||
msg_ok "Cleared and Cached"
|
||||
chmod -R 775 /opt/investbrain/bootstrap/cache
|
||||
msg_ok "Installed Investbrain"
|
||||
|
||||
msg_info "Configuring Nginx"
|
||||
PHPVER=$(php -r 'echo PHP_MAJOR_VERSION . "." . PHP_MINOR_VERSION . "\n";')
|
||||
cat <<EOF >/etc/nginx/sites-available/investbrain.conf
|
||||
server {
|
||||
listen 8000 default_server;
|
||||
@@ -148,7 +130,7 @@ server {
|
||||
}
|
||||
|
||||
location ~ \.php\$ {
|
||||
fastcgi_pass unix:/var/run/php/php${PHPVER}-fpm.sock;
|
||||
fastcgi_pass unix:/var/run/php/php${PHP_VERSION}-fpm.sock;
|
||||
fastcgi_param SCRIPT_FILENAME \$realpath_root\$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
fastcgi_hide_header X-Powered-By;
|
||||
@@ -163,7 +145,6 @@ server {
|
||||
access_log /var/log/nginx/investbrain_access.log;
|
||||
}
|
||||
EOF
|
||||
|
||||
ln -sf /etc/nginx/sites-available/investbrain.conf /etc/nginx/sites-enabled/
|
||||
rm -f /etc/nginx/sites-enabled/default
|
||||
$STD systemctl reload nginx
|
||||
@@ -183,7 +164,6 @@ stdout_logfile_maxbytes=50MB
|
||||
stdout_logfile_backups=10
|
||||
numprocs=1
|
||||
EOF
|
||||
|
||||
$STD supervisorctl reread
|
||||
$STD supervisorctl update
|
||||
$STD supervisorctl start all
|
||||
@@ -197,14 +177,6 @@ chmod 644 /etc/cron.d/investbrain-scheduler
|
||||
$STD systemctl restart cron
|
||||
msg_ok "Setup Cron for Scheduler"
|
||||
|
||||
{
|
||||
echo ""
|
||||
echo "Investbrain Database Credentials"
|
||||
echo "Database Name: ${PG_DB_NAME}"
|
||||
echo "Database User: ${PG_DB_USER}"
|
||||
echo "Database Password: ${PG_DB_PASS}"
|
||||
} >>~/investbrain.creds
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
|
||||
Reference in New Issue
Block a user