101 lines
4.2 KiB
Plaintext
101 lines
4.2 KiB
Plaintext
================================================================================
|
||
Установка файлообменника (текстовая справка)
|
||
================================================================================
|
||
|
||
Сервер на Go, база PostgreSQL, запуск через Docker Compose.
|
||
Порт приложения по умолчанию: 8090.
|
||
|
||
Веб-версия этой инструкции: http://localhost:8090/help.html
|
||
|
||
|
||
1. Что нужно
|
||
--------------------------------------------------------------------------------
|
||
|
||
- Docker и Docker Compose (в Docker Desktop для Windows уже есть Compose).
|
||
- Исходники проекта (каталог с docker-compose.yml, Dockerfile и скриптами
|
||
установки).
|
||
|
||
|
||
2. Windows (PowerShell)
|
||
--------------------------------------------------------------------------------
|
||
|
||
В каталоге проекта выполните:
|
||
|
||
.\install.ps1
|
||
|
||
Скрипт проверит наличие Docker, при отсутствии файла .env скопирует его из
|
||
.env.example, затем выполнит сборку и запуск контейнеров.
|
||
|
||
|
||
3. Linux и macOS
|
||
--------------------------------------------------------------------------------
|
||
|
||
Сделайте скрипт исполняемым и запустите:
|
||
|
||
chmod +x install.sh
|
||
./install.sh
|
||
|
||
|
||
4. Установка вручную
|
||
--------------------------------------------------------------------------------
|
||
|
||
1) Скопируйте .env.example в .env.
|
||
2) Откройте .env и задайте надёжный POSTGRES_PASSWORD (для Docker это пароль
|
||
пользователя PostgreSQL).
|
||
3) В том же каталоге выполните:
|
||
|
||
docker compose up -d --build
|
||
|
||
При первом запуске образ приложения соберётся, поднимется PostgreSQL и сервис
|
||
с файлообменником.
|
||
|
||
|
||
5. Файл .env
|
||
--------------------------------------------------------------------------------
|
||
|
||
POSTGRES_PASSWORD — пароль БД (должен совпадать с тем, что подставляется в
|
||
строку подключения в Compose).
|
||
MAX_UPLOAD_MB — необязательно; лимит размера загрузки в мегабайтах
|
||
(по умолчанию 100).
|
||
PUBLIC_BASE_URL — если сервер за обратным прокси с другим хостом/HTTPS,
|
||
можно указать публичный базовый URL для корректных
|
||
ссылок в API.
|
||
|
||
|
||
6. После установки
|
||
--------------------------------------------------------------------------------
|
||
|
||
- Откройте в браузере: http://localhost:8090/
|
||
- Проверка работы и версии: http://localhost:8090/health
|
||
(JSON: статус и поле version).
|
||
|
||
|
||
7. Остановка и данные
|
||
--------------------------------------------------------------------------------
|
||
|
||
Остановить контейнеры:
|
||
|
||
docker compose down
|
||
|
||
Файлы загрузок и данные PostgreSQL хранятся в именованных томах Docker
|
||
(uploads и pgdata), поэтому после down они не удаляются.
|
||
|
||
Чтобы удалить и тома (осторожно, потеряете файлы и БД):
|
||
|
||
docker compose down -v
|
||
|
||
|
||
8. Запуск без Docker (для разработки)
|
||
--------------------------------------------------------------------------------
|
||
|
||
Нужен установленный PostgreSQL и переменная окружения DATABASE_URL, например:
|
||
|
||
set DATABASE_URL=postgres://user:pass@localhost:5432/fileshare?sslmode=disable
|
||
go run ./cmd/fileshare
|
||
|
||
В Linux/macOS вместо set используйте:
|
||
|
||
export DATABASE_URL=postgres://user:pass@localhost:5432/fileshare?sslmode=disable
|
||
|
||
================================================================================
|