fix(bootstrap): clarify OWGIT_REPO_DIR and document path errors
Made-with: Cursor
This commit is contained in:
@@ -63,14 +63,24 @@ sudo docker compose up -d
|
|||||||
Или one-shot bootstrap (без локального HAProxy, если он уже есть отдельно):
|
Или one-shot bootstrap (без локального HAProxy, если он уже есть отдельно):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
cd /путь/к/клону/owngit
|
||||||
chmod +x scripts/bootstrap-own-git.sh
|
chmod +x scripts/bootstrap-own-git.sh
|
||||||
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false scripts/bootstrap-own-git.sh
|
sudo OWGIT_REPO_DIR="$(pwd)" ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Переменная **`OWGIT_REPO_DIR`** должна указывать на **реальный** каталог с этим репозиторием (где есть `gitea/docker-compose.yml`). Если вы задали `/opt/owngit`, но клон лежит в `/tmp/owngit`, файлы не найдутся — используйте `$(pwd)` из каталога клона или склонируйте в `/opt/owngit`.
|
||||||
|
|
||||||
|
Вариант из `/opt` после `git clone … /opt/owngit`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
Сначала безопасная проверка шагов без изменений:
|
Сначала безопасная проверка шагов без изменений:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false scripts/bootstrap-own-git.sh --dry-run
|
cd /путь/к/owngit
|
||||||
|
sudo OWGIT_REPO_DIR="$(pwd)" ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh --dry-run
|
||||||
```
|
```
|
||||||
|
|
||||||
Полезные переменные bootstrap:
|
Полезные переменные bootstrap:
|
||||||
@@ -100,13 +110,15 @@ cd /opt/owngit && sudo chmod +x scripts/bootstrap-own-git.sh
|
|||||||
Сначала прогон без изменений:
|
Сначала прогон без изменений:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false scripts/bootstrap-own-git.sh --dry-run
|
cd /opt/owngit
|
||||||
|
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh --dry-run
|
||||||
```
|
```
|
||||||
|
|
||||||
Потом реальный запуск:
|
Потом реальный запуск:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false scripts/bootstrap-own-git.sh
|
cd /opt/owngit
|
||||||
|
sudo OWGIT_REPO_DIR=/opt/owngit ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
После установки быстрая проверка:
|
После установки быстрая проверка:
|
||||||
@@ -126,13 +138,14 @@ curl -I http://127.0.0.1:3000
|
|||||||
Пример запуска для вашего случая:
|
Пример запуска для вашего случая:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
cd /opt/owngit
|
||||||
sudo OWGIT_REPO_DIR=/opt/owngit \
|
sudo OWGIT_REPO_DIR=/opt/owngit \
|
||||||
ENABLE_HAPROXY=false \
|
ENABLE_HAPROXY=false \
|
||||||
ENABLE_REMOTE_HAPROXY_DEPLOY=true \
|
ENABLE_REMOTE_HAPROXY_DEPLOY=true \
|
||||||
REMOTE_HAPROXY_HOST=192.168.128.65 \
|
REMOTE_HAPROXY_HOST=192.168.128.65 \
|
||||||
REMOTE_HAPROXY_USER=papatramp \
|
REMOTE_HAPROXY_USER=papatramp \
|
||||||
REMOTE_HAPROXY_PASSWORD='ваш_пароль_ssh' \
|
REMOTE_HAPROXY_PASSWORD='ваш_пароль_ssh' \
|
||||||
scripts/bootstrap-own-git.sh
|
./scripts/bootstrap-own-git.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
Рекомендуется сначала сделать dry-run с теми же переменными.
|
Рекомендуется сначала сделать dry-run с теми же переменными.
|
||||||
|
|||||||
@@ -201,3 +201,20 @@ docker compose version
|
|||||||
```
|
```
|
||||||
|
|
||||||
Путь `…/cli-plugins/docker-compose` — стандартный для подкоманды `docker compose`.
|
Путь `…/cli-plugins/docker-compose` — стандартный для подкоманды `docker compose`.
|
||||||
|
|
||||||
|
## 11) Bootstrap: «Не найден файл: …/gitea/docker-compose.yml» и т.п.
|
||||||
|
|
||||||
|
Скрипт ищет файлы по **`OWGIT_REPO_DIR`** (по умолчанию это каталог **над** `scripts/`, где лежит `bootstrap-own-git.sh`). Ошибка значит: переменная указывает **не на тот** каталог или репозиторий не склонирован туда.
|
||||||
|
|
||||||
|
**Пример ошибки:** задали `OWGIT_REPO_DIR=/opt/owngit`, а клон реально в `/tmp/owngit`.
|
||||||
|
|
||||||
|
**Исправление:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /tmp/owngit # каталог с gitea/, systemd/, …
|
||||||
|
sudo OWGIT_REPO_DIR="$(pwd)" ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
Либо склонируйте репозиторий в `/opt/owngit` и используйте `OWGIT_REPO_DIR=/opt/owngit`. Запускайте **`./scripts/bootstrap-own-git.sh`** из каталога клона (или с явным путём к скрипту), чтобы не исполнить случайный скрипт из `$PATH`.
|
||||||
|
|
||||||
|
См. также блок про bootstrap в [`README.md`](../README.md).
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ set -euo pipefail
|
|||||||
# 3) Запускать от root (sudo).
|
# 3) Запускать от root (sudo).
|
||||||
#
|
#
|
||||||
# OWGIT_REPO_DIR по умолчанию — корень репозитория (каталог над scripts/). Для установки из /opt/owngit задайте явно:
|
# OWGIT_REPO_DIR по умолчанию — корень репозитория (каталог над scripts/). Для установки из /opt/owngit задайте явно:
|
||||||
# OWGIT_REPO_DIR=/opt/owngit sudo ./scripts/bootstrap-own-git.sh
|
# cd /opt/owngit && sudo OWGIT_REPO_DIR="$(pwd)" ./scripts/bootstrap-own-git.sh
|
||||||
|
|
||||||
_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
_SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
_REPO_ROOT="$(cd "${_SCRIPT_DIR}/.." && pwd)"
|
_REPO_ROOT="$(cd "${_SCRIPT_DIR}/.." && pwd)"
|
||||||
@@ -96,7 +96,14 @@ require_paths() {
|
|||||||
missing=1
|
missing=1
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
[[ "$missing" -eq 0 ]] || exit 1
|
if [[ "$missing" -ne 0 ]]; then
|
||||||
|
err "OWGIT_REPO_DIR=${OWGIT_REPO_DIR}"
|
||||||
|
err "Должен указывать на корень клона owngit (рядом должны быть каталоги gitea/, systemd/, fail2ban/)."
|
||||||
|
warn "Если клон не в этой папке: sudo OWGIT_REPO_DIR=/путь/к/owngit ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh"
|
||||||
|
warn "Из каталога клона без переменной (автовыбор каталога): cd /путь/к/owngit && sudo ENABLE_HAPROXY=false ./scripts/bootstrap-own-git.sh"
|
||||||
|
warn "Если нужен именно /opt/owngit — клонируйте репозиторий туда или скопируйте дерево файлов."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
install_packages() {
|
install_packages() {
|
||||||
|
|||||||
Reference in New Issue
Block a user