Сервер на Go, база PostgreSQL, запуск через Docker Compose. Порт приложения по умолчанию: 8090.
docker-compose.yml, Dockerfile и скриптами установки).В каталоге проекта выполните:
.\install.ps1
Скрипт проверит наличие Docker, при отсутствии файла .env скопирует его из .env.example, затем выполнит сборку и запуск контейнеров.
Сделайте скрипт исполняемым и запустите:
chmod +x install.sh
./install.sh
.env.example в .env..env и задайте надёжный POSTGRES_PASSWORD (для Docker это пароль пользователя PostgreSQL).docker compose up -d --build
При первом запуске образ приложения соберётся, поднимется PostgreSQL и сервис с файлообменником.
.envPOSTGRES_PASSWORD — пароль БД (должен совпадать с тем, что подставляется в строку подключения в Compose).MAX_UPLOAD_MB — необязательно; лимит размера загрузки в мегабайтах (по умолчанию 100).PUBLIC_BASE_URL — если сервер за обратным прокси с другим хостом/HTTPS, можно указать публичный базовый URL для корректных ссылок в API.version).Остановить контейнеры:
docker compose down
Файлы загрузок и данные PostgreSQL хранятся в именованных томах Docker (uploads и pgdata), поэтому после down они не удаляются. Чтобы удалить и тома (осторожно, потеряете файлы и БД):
docker compose down -v
Нужен установленный PostgreSQL и переменная окружения DATABASE_URL, например:
set DATABASE_URL=postgres://user:pass@localhost:5432/fileshare?sslmode=disable
go run ./cmd/fileshare
В Linux/macOS вместо set используйте export DATABASE_URL=....