From 0e86104aec7ebbdc7f364e6a91abfeceed052ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A4=D0=BE=D1=84=D0=B0=D0=BD=D0=BE=D0=B2=20=D0=94=D0=BC?= =?UTF-8?q?=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20=D0=92=D0=B8=D0=BA=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B8=D1=87?= Date: Tue, 1 Sep 2026 12:14:34 +0300 Subject: [PATCH] Add reproducible LXC provisioning script --- deploy/provision.sh | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100755 deploy/provision.sh diff --git a/deploy/provision.sh b/deploy/provision.sh new file mode 100755 index 0000000..5a2da3a --- /dev/null +++ b/deploy/provision.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# Подготавливает Ubuntu LXC и публикует статический Coral Mobile Lending через Nginx. + +set -euo pipefail + +export DEBIAN_FRONTEND=noninteractive +APP_DIR=/var/www/coral-mobile-lending +REPOSITORY=https://github.dfv24.com/fofanov.dmitry/coral-mobile-lending.git + +# Локаль и часовой пояс задаются до запуска веб-сервера. +apt-get update +apt-get install -y --no-install-recommends ca-certificates git locales nginx +sed -i 's/^# *ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/' /etc/locale.gen +locale-gen ru_RU.UTF-8 +update-locale LANG=ru_RU.UTF-8 LC_ALL=ru_RU.UTF-8 +ln -snf /usr/share/zoneinfo/Europe/Moscow /etc/localtime +printf 'Europe/Moscow\n' > /etc/timezone + +# Клонирование повторяемо: существующая рабочая копия только обновляется. +if [[ -d "$APP_DIR/.git" ]]; then + git -C "$APP_DIR" fetch --depth=1 origin main + git -C "$APP_DIR" reset --hard origin/main +else + rm -rf "$APP_DIR" + git clone --depth=1 "$REPOSITORY" "$APP_DIR" +fi + +install -m 0644 "$APP_DIR/deploy/nginx.conf" /etc/nginx/sites-available/coral-mobile-lending +rm -f /etc/nginx/sites-enabled/default +ln -sfn /etc/nginx/sites-available/coral-mobile-lending /etc/nginx/sites-enabled/coral-mobile-lending +nginx -t +systemctl enable --now nginx +systemctl reload nginx