#!/bin/bash set -euo pipefail log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $*" } check() { log "пути к java" export JAVA_HOME="/opt/1cv8/x86_64/$SERVER_VERSION/jre/" export PATH="/opt/1cv8/x86_64/$SERVER_VERSION/jre/bin:$PATH" } setup() { if [ ! -d "/opt/1cv8/x86_64/${SERVER_VERSION}" ]; then log "Нужная версия 1С $SERVER_VERSION не установленна в $WORKDIR " log "Установка компонентов 1С версии ${SERVER_VERSION}" /tmp/distr/setup-full-${SERVER_VERSION}-x86_64.run \ --enable-components ws,v8_install_deps,server_admin \ --mode unattended else echo "Платформа 1С $SERVER_VERSION уже установлена. Путь: $WORKDIR" fi if [ ! -f "/etc/apache2/mods-enabled/wsap24.load" ]; then log "Подключаю модуль wsap24" echo "LoadModule _1cws_module /opt/1cv8/x86_64/${SERVER_VERSION}/wsap24.so" > /etc/apache2/mods-available/wsap24.load ln -s /etc/apache2/mods-available/wsap24.load /etc/apache2/mods-enabled/wsap24.load else log "Модуль уже wsap24.load подключен" fi log "Публикация Баз на вебсервере" /opt/1cv8/x86_64/${SERVER_VERSION}/webinst \ -publish \ -apache24 \ -wsdir test \ -dir /var/www/1c/test \ -connstr "File=/bases/test;" \ -confpath /etc/apache2/apache2.conf } start() { exec /usr/sbin/apache2ctl -DFOREGROUND } main() { log "=== Запуск Web Сервера ===" check setup log "=== Все готово, запускаем сервер ===" start } # Обработка сигналов trap 'log "Получен сигнал остановки"; exit 0' SIGTERM SIGINT # Запуск основной функции main "$@"