Files
ProxmoxVE/install/kimai-install.sh
T

99 lines
2.4 KiB
Bash
Raw Normal View History

2024-11-21 22:25:59 +01:00
#!/usr/bin/env bash
# Copyright (c) 2021-2026 community-scripts ORG
2024-11-21 22:25:59 +01:00
# Author: MickLesk
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.kimai.org/ | Github: https://github.com/kimai/kimai
2024-11-21 22:25:59 +01:00
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
2024-11-21 22:25:59 +01:00
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
$STD apt install -y \
2024-11-21 22:25:59 +01:00
apt-transport-https \
apache2 \
git \
expect
2024-11-21 22:25:59 +01:00
msg_ok "Installed Dependencies"
setup_mariadb
PHP_VERSION="8.4" PHP_APACHE="YES" setup_php
setup_composer
2025-01-20 14:00:33 +01:00
MYSQL_VERSION=$(mariadb --version | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')
MARIADB_DB_NAME="kimai_db" MARIADB_DB_USER="kimai" setup_mariadb_db
2024-11-21 22:25:59 +01:00
2026-01-07 08:49:12 +01:00
fetch_and_deploy_gh_release "kimai" "kimai/kimai" "tarball"
msg_info "Setup Kimai"
2026-06-19 09:53:48 +02:00
APP_SECRET=$(openssl rand -hex 48)
cd /opt/kimai
echo "export COMPOSER_ALLOW_SUPERUSER=1" >>~/.bashrc
2024-11-21 22:25:59 +01:00
source ~/.bashrc
$STD composer install --no-dev --optimize-autoloader --no-interaction
cp .env.dist .env
sed -i "/^DATABASE_URL=.*/c\DATABASE_URL=mysql://kimai:$MARIADB_DB_PASS@127.0.0.1:3306/kimai_db?charset=utf8mb4&serverVersion=mariadb-$MYSQL_VERSION" /opt/kimai/.env
2026-06-19 09:53:48 +02:00
sed -i "s|^APP_SECRET=.*|APP_SECRET=$APP_SECRET|" /opt/kimai/.env
2024-11-21 22:25:59 +01:00
$STD bin/console kimai:install -n
$STD expect <<EOF
set timeout -1
log_user 0
2026-03-25 17:48:03 +01:00
spawn bin/console kimai:user:create admin admin@community-scripts.org ROLE_SUPER_ADMIN
2024-11-21 22:25:59 +01:00
expect "Please enter the password:"
2026-03-25 17:48:03 +01:00
send "community-scripts.org\r"
2024-11-21 22:25:59 +01:00
expect eof
EOF
2025-01-20 16:51:05 +01:00
$STD composer update --no-interaction
cat <<EOF >/opt/kimai/config/packages/local.yaml
kimai:
timesheet:
rounding:
default:
begin: 15
end: 15
EOF
2024-11-21 22:25:59 +01:00
msg_ok "Installed Kimai"
msg_info "Creating Service"
cat <<EOF >/etc/apache2/sites-available/kimai.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /opt/kimai/public/
<Directory /opt/kimai/public>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
EOF
$STD a2ensite kimai.conf
$STD a2dissite 000-default.conf
2024-11-21 22:25:59 +01:00
$STD systemctl reload apache2
msg_ok "Created Service"
2025-03-17 10:55:16 +01:00
msg_info "Setup Permissions"
chown -R :www-data /opt/*
chmod -R g+r /opt/*
chmod -R g+rw /opt/*
chown -R www-data:www-data /opt/*
chmod -R 777 /opt/*
msg_ok "Setup Permissions"
2024-11-21 22:25:59 +01:00
motd_ssh
customize
cleanup_lxc