From f86db843e2e94b200cad6c5beac6eb454f58a25e Mon Sep 17 00:00:00 2001 From: skilletfun <60892021+skilletfun@users.noreply.github.com> Date: Fri, 2 Oct 2026 00:23:26 +0300 Subject: [PATCH] feat(glance): add alpine os (#17605) * feat(glance): add alpine os * Increase default RAM and disk for Alpine OS --------- Co-authored-by: CanbiZ (MickLesk) <47820557+MickLesk@users.noreply.github.com> --- ct/glance.sh | 61 +++++++++++++++++++++++++++++----- install/glance-install.sh | 69 ++++++++++++++++++++++++++++++++++----- 2 files changed, 112 insertions(+), 18 deletions(-) diff --git a/ct/glance.sh b/ct/glance.sh index 6c16ce13b..d771ab066 100644 --- a/ct/glance.sh +++ b/ct/glance.sh @@ -9,23 +9,30 @@ source "$_cs_boot" 2>/dev/null || source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_ APP="Glance" var_tags="${var_tags:-dashboard}" var_cpu="${var_cpu:-1}" -var_ram="${var_ram:-512}" -var_disk="${var_disk:-2}" -var_os="${var_os:-debian}" -var_version="${var_version:-13}" var_arm64="${var_arm64:-yes}" var_unprivileged="${var_unprivileged:-1}" +if [[ -z "${var_os:-}" ]] && command -v pveversion >/dev/null 2>&1; then + var_os=$(msg_menu "Choose the container OS" \ + "debian" "Debian 13" \ + "alpine" "Alpine 3.24 (smaller footprint)") +fi + +if [[ "${var_os:-}" == "alpine" ]]; then + var_ram="${var_ram:-256}" + var_disk="${var_disk:-2}" + var_version="${var_version:-3.24}" +else + var_ram="${var_ram:-512}" + var_disk="${var_disk:-2}" + var_version="${var_version:-13}" +fi header_info "$APP" variables color catch_errors -function update_script() { - header_info - check_container_storage - check_container_resources - +update_deb_based() { if [[ ! -f /etc/systemd/system/glance.service ]]; then msg_error "No ${APP} Installation Found!" exit @@ -54,6 +61,42 @@ function update_script() { exit } +update_alpine() { + if [[ ! -f /etc/init.d/glance ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + if [[ ! -d /opt/glance_data ]]; then + msg_info "Creating config directory" + mkdir -p /opt/glance_data/ + cp /opt/glance/*.yml /opt/glance_data/ + sed -i 's|/opt/glance/glance\.yml|/opt/glance_data/glance.yml|' /etc/init.d/glance + rc-service glance restart + msg_ok "Created config directory" + fi + + if check_for_gh_release "glance" "glanceapp/glance"; then + msg_info "Stopping Service" + rc-service glance stop + msg_ok "Stopped Service" + + CLEAN_INSTALL=1 fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-$(arch_resolve).tar.gz" + + msg_info "Starting Service" + rc-service glance start + msg_ok "Started Service" + msg_ok "Updated successfully!" + fi + exit +} + +function update_script() { + header_info + check_container_storage + check_container_resources + run_os_update +} + start build_container description diff --git a/install/glance-install.sh b/install/glance-install.sh index 2d6c8b233..afc176ad9 100644 --- a/install/glance-install.sh +++ b/install/glance-install.sh @@ -13,11 +13,12 @@ setting_up_container network_check update_os -fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-$(arch_resolve).tar.gz" +setup_deb_based() { + fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-$(arch_resolve).tar.gz" -msg_info "Configuring Glance" -mkdir -p /opt/glance_data -cat </opt/glance_data/glance.yml + msg_info "Configuring Glance" + mkdir -p /opt/glance_data + cat </opt/glance_data/glance.yml pages: - name: Startpage width: slim @@ -37,10 +38,10 @@ pages: - title: Helper Scripts url: https://github.com/community-scripts/ProxmoxVE EOF -msg_ok "Configured Glance" + msg_ok "Configured Glance" -msg_info "Creating Service" -cat </etc/systemd/system/glance.service + msg_info "Creating Service" + cat </etc/systemd/system/glance.service [Unit] Description=Glance Daemon After=network.target @@ -56,8 +57,58 @@ Restart=on-failure [Install] WantedBy=multi-user.target EOF -systemctl enable -q --now glance -msg_ok "Created Service" + systemctl enable -q --now glance + msg_ok "Created Service" +} + +setup_alpine() { + fetch_and_deploy_gh_release "glance" "glanceapp/glance" "prebuild" "latest" "/opt/glance" "glance-linux-$(arch_resolve).tar.gz" + + msg_info "Configuring Glance" + mkdir -p /opt/glance_data + cat </opt/glance_data/glance.yml +pages: + - name: Startpage + width: slim + hide-desktop-navigation: true + center-vertically: true + columns: + - size: full + widgets: + - type: search + autofocus: true + - type: bookmarks + groups: + - title: General + links: + - title: Google + url: https://www.google.com/ + - title: Helper Scripts + url: https://github.com/community-scripts/ProxmoxVE +EOF + msg_ok "Configured Glance" + + msg_info "Creating Service" + cat </etc/init.d/glance +#!/sbin/openrc-run +name="glance" +description="Glance Daemon" +command="/opt/glance/glance" +command_args="--config /opt/glance_data/glance.yml" +command_background="yes" +pidfile="/run/glance.pid" + +depend() { + need net +} +EOF + chmod +x /etc/init.d/glance + rc-update add glance default + rc-service glance start + msg_ok "Created Service" +} + +run_os_setup motd_ssh customize