From 5991aad810f8c92a4cc028dde9b4ef38a1bd478e Mon Sep 17 00:00:00 2001 From: zro Date: Mon, 8 Jun 2026 10:36:53 +0300 Subject: [PATCH] init --- .env.template | 14 +++++++++++ .gitignore | 25 +++++++++++++++++++ README.md | 1 + docker-compose.yml | 61 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 101 insertions(+) create mode 100644 .env.template create mode 100644 .gitignore create mode 100644 README.md create mode 100644 docker-compose.yml diff --git a/.env.template b/.env.template new file mode 100644 index 0000000..0dba280 --- /dev/null +++ b/.env.template @@ -0,0 +1,14 @@ +# --- Подключение к вашей существующей PostgreSQL --- +HBOX_DATABASE_DRIVER="postgres" +HBOX_DATABASE_HOST="postgres" +HBOX_DATABASE_PORT="5432" +HBOX_DATABASE_USERNAME="hb_user" +HBOX_DATABASE_PASSWORD="ChangeToYourSuperStrongPassword" +HBOX_DATABASE_DATABASE="homebox" +HBOX_DATABASE_SSL_MODE="disable" + +# --- Настройки приложения --- +HBOX_LOG_LEVEL="info" +HBOX_LOG_FORMAT="text" +HBOX_WEB_MAX_UPLOAD_SIZE="100" +#HBOX_OPTIONS_CURRENCY_CONFIG="/data/currency.json" diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..805ae17 --- /dev/null +++ b/.gitignore @@ -0,0 +1,25 @@ +# Secrets +.env +*.pem +*.key + +# Dependencies +node_modules/ +vendor/ + +# Build outputs +dist/ +build/ +*.exe + +# IDE +.vscode/ +.idea/ +*.swp + +# OS +.DS_Store +Thumbs.db + +# Logs +*.log diff --git a/README.md b/README.md new file mode 100644 index 0000000..f39a9fc --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# HomeBox \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..e03def6 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,61 @@ +services: + # ----- HomeBox (основной сервис) ----- + homebox: + image: ghcr.io/sysadminsmedia/homebox:latest + container_name: homebox + restart: unless-stopped + environment: + # --- Локализация --- + - TZ=Europe/Moscow + + # --- Подключение к вашей существующей PostgreSQL --- + - HBOX_DATABASE_DRIVER=${HBOX_DATABASE_DRIVER} # Переключаем с SQLite на PostgreSQL [citation:3] + - HBOX_DATABASE_HOST=${HBOX_DATABASE_HOST} # Имя сервиса PostgreSQL + - HBOX_DATABASE_PORT=${HBOX_DATABASE_PORT} + - HBOX_DATABASE_USERNAME=${HBOX_DATABASE_USERNAME} # Используем вашего существующего пользователя + - HBOX_DATABASE_PASSWORD=${HBOX_DATABASE_PASSWORD} # Берём пароль из .env файла + - HBOX_DATABASE_DATABASE=${HBOX_DATABASE_DATABASE} # Отдельная БД для HomeBox (создадим ниже) + - HBOX_DATABASE_SSL_MODE=${HBOX_DATABASE_SSL_MODE} # В вашей сети Docker SSL не нужен [citation:3] + + # --- Настройки приложения --- + - HBOX_LOG_LEVEL=${HBOX_LOG_LEVEL} + - HBOX_LOG_FORMAT=${HBOX_LOG_FORMAT} + - HBOX_WEB_MAX_UPLOAD_SIZE=${HBOX_WEB_MAX_UPLOAD_SIZE} + - HBOX_OPTIONS_CURRENCY_CONFIG=${HBOX_OPTIONS_CURRENCY_CONFIG} # Опционально: свои валюты + + # --- Для jwilder/nginx-proxy (ваша существующая связка) --- + - VIRTUAL_HOST=hb.domain.ru + - VIRTUAL_PORT=7745 + - LETSENCRYPT_HOST=hb.domain.ru + - LETSENCRYPT_EMAIL=my@email.ru + + volumes: + # Данные HomeBox (фото, документы, файлы) + - hb_data:/data + # Опционально: свои конфиги валют + # - ./currency.json:/data/currency.json + + networks: + - net + + # --- Лимиты ресурсов (по аналогии с вашими сервисами) --- + deploy: + resources: + limits: + cpus: '0.5' + memory: 256M + reservations: + cpus: '0.25' + memory: 128M + +volumes: + hb_data: + driver: local + driver_opts: + type: none + device: /mnt/hb + o: bind + +networks: + net: + external: true