Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a319a8c6d5 | |||
| b6ecf43079 | |||
| b567814b64 |
@@ -1,6 +1,4 @@
|
||||
================================================================================
|
||||
Файлообменник (fileshare) — сведения о релизе
|
||||
================================================================================
|
||||
|
||||
Текущая версия: 0.10
|
||||
Дата фиксации описания: 2026-04-17
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="ru">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Установка — Файлообменник</title>
|
||||
<style>
|
||||
:root { font-family: system-ui, sans-serif; line-height: 1.55; }
|
||||
body { max-width: 52rem; margin: 2rem auto; padding: 0 1rem; }
|
||||
h1 { font-size: 1.5rem; margin-bottom: 0.5rem; }
|
||||
h2 { font-size: 1.15rem; margin-top: 1.75rem; }
|
||||
h3 { font-size: 1rem; margin-top: 1.25rem; }
|
||||
a { color: #2563eb; }
|
||||
nav { margin-bottom: 1.5rem; font-size: 0.95rem; }
|
||||
pre, code {
|
||||
font-family: ui-monospace, Consolas, monospace;
|
||||
font-size: 0.9rem;
|
||||
background: #f4f4f5;
|
||||
border-radius: 6px;
|
||||
}
|
||||
pre { padding: 0.75rem 1rem; overflow-x: auto; }
|
||||
code { padding: 0.15rem 0.35rem; }
|
||||
pre code { padding: 0; background: none; }
|
||||
ul { padding-left: 1.25rem; }
|
||||
li { margin: 0.35rem 0; }
|
||||
.note { color: #52525b; font-size: 0.95rem; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<nav><a href="/">← На главную</a></nav>
|
||||
<h1>Установка файлообменника</h1>
|
||||
<p class="note">Сервер на Go, база PostgreSQL, запуск через Docker Compose. Порт приложения по умолчанию: <strong>8090</strong>.</p>
|
||||
|
||||
<h2>1. Что нужно</h2>
|
||||
<ul>
|
||||
<li><strong>Docker</strong> и <strong>Docker Compose</strong> (в Docker Desktop для Windows уже есть Compose).</li>
|
||||
<li>Исходники проекта (каталог с <code>docker-compose.yml</code>, <code>Dockerfile</code> и скриптами установки).</li>
|
||||
</ul>
|
||||
|
||||
<h2>2. Windows (PowerShell)</h2>
|
||||
<p>В каталоге проекта выполните:</p>
|
||||
<pre><code>.\install.ps1</code></pre>
|
||||
<p>Скрипт проверит наличие Docker, при отсутствии файла <code>.env</code> скопирует его из <code>.env.example</code>, затем выполнит сборку и запуск контейнеров.</p>
|
||||
|
||||
<h2>3. Linux и macOS</h2>
|
||||
<p>Сделайте скрипт исполняемым и запустите:</p>
|
||||
<pre><code>chmod +x install.sh
|
||||
./install.sh</code></pre>
|
||||
|
||||
<h2>4. Установка вручную</h2>
|
||||
<ol>
|
||||
<li>Скопируйте <code>.env.example</code> в <code>.env</code>.</li>
|
||||
<li>Откройте <code>.env</code> и задайте надёжный <code>POSTGRES_PASSWORD</code> (для Docker это пароль пользователя PostgreSQL).</li>
|
||||
<li>В том же каталоге выполните:</li>
|
||||
</ol>
|
||||
<pre><code>docker compose up -d --build</code></pre>
|
||||
<p>При первом запуске образ приложения соберётся, поднимется PostgreSQL и сервис с файлообменником.</p>
|
||||
|
||||
<h2>5. Файл <code>.env</code></h2>
|
||||
<ul>
|
||||
<li><code>POSTGRES_PASSWORD</code> — пароль БД (должен совпадать с тем, что подставляется в строку подключения в Compose).</li>
|
||||
<li><code>MAX_UPLOAD_MB</code> — необязательно; лимит размера загрузки в мегабайтах (по умолчанию 100).</li>
|
||||
<li><code>PUBLIC_BASE_URL</code> — если сервер за обратным прокси с другим хостом/HTTPS, можно указать публичный базовый URL для корректных ссылок в API.</li>
|
||||
</ul>
|
||||
|
||||
<h2>6. После установки</h2>
|
||||
<ul>
|
||||
<li>Откройте в браузере: <a href="/">http://localhost:8090/</a></li>
|
||||
<li>Проверка работы и версии: <a href="/health">http://localhost:8090/health</a> (JSON: статус и поле <code>version</code>).</li>
|
||||
</ul>
|
||||
|
||||
<h2>7. Остановка и данные</h2>
|
||||
<p>Остановить контейнеры:</p>
|
||||
<pre><code>docker compose down</code></pre>
|
||||
<p>Файлы загрузок и данные PostgreSQL хранятся в именованных томах Docker (<code>uploads</code> и <code>pgdata</code>), поэтому после <code>down</code> они не удаляются. Чтобы удалить и тома (осторожно, потеряете файлы и БД):</p>
|
||||
<pre><code>docker compose down -v</code></pre>
|
||||
|
||||
<h2>8. Запуск без Docker (для разработки)</h2>
|
||||
<p>Нужен установленный PostgreSQL и переменная окружения <code>DATABASE_URL</code>, например:</p>
|
||||
<pre><code>set DATABASE_URL=postgres://user:pass@localhost:5432/fileshare?sslmode=disable
|
||||
go run ./cmd/fileshare</code></pre>
|
||||
<p class="note">В Linux/macOS вместо <code>set</code> используйте <code>export DATABASE_URL=...</code>.</p>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,100 @@
|
||||
================================================================================
|
||||
Установка файлообменника (текстовая справка)
|
||||
================================================================================
|
||||
|
||||
Сервер на 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
|
||||
|
||||
================================================================================
|
||||
Reference in New Issue
Block a user