Предполагается, что Gitea разворачивается из [бэкапа](#создание-бэкапа) с помощью Docker Compose как описано в инструкции [выше](#установка-с-docker). В [документации](https://docs.gitea.com/1.24/administration/backup-and-restore#using-docker-restore) есть соответствующая инструкция, однако она не полная и содержит ошибки.
```sh
# Если создавали пользователя по инструкции выше,
# то команды выполняем от него
sudo su - gitea
# Распаковываем бэкап
unzip -q gitea-dump-*.zip -d dump
# Создаём директорию для данных Gitea
mkdir data
# Копируем данные
cp -r dump/data/ data/gitea/
# Копируем репозитории
mkdir data/git/
cp -r dump/repos/ data/git/repositories/
# Копируем кастомные стили и шаблоны
cp -r dump/custom/. data/gitea/
# Если Gitea в Docker будет работать с SQLite,
# то восстановить базу данных можно так.
# Команды для других баз данныех есть в документации
sqlite3 data/gitea/gitea.db < dump/gitea-db.sql
# Копируем конфиг
mkdir data/gitea/conf
cp dump/app.ini data/gitea/conf/app.ini
```
Если до этого Gitea была запущена не через Docker, то нужно отредактировать конфиг.
=== "Терминал"
```sh
vim data/gitea/conf/app.ini
```
=== "`app.ini` для Docker"
Это не полноценный конфиг, а лишь часть настроек для запуска Gitea Docker.
Подразумевается, что конфиг был перенесён из бэкапа.
```ini
RUN_USER = gitea
WORK_PATH = /data/gitea
[server]
LOCAL_ROOT_URL = http://localhost:3000
APP_DATA_PATH = /data/gitea
DOMAIN = localhost
SSH_DOMAIN = localhost
HTTP_PORT = 3000
SSH_PORT = 22
[repository]
ROOT = /data/git/repositories
[database]
PATH = /data/gitea/gitea.db
DB_TYPE = sqlite3
HOST = localhost:3306
NAME = gitea
USER = root
PASSWD =
LOG_SQL = false
[lfs]
PATH = /data/git/lfs
[log]
ROOT_PATH = /data/gitea/log
```
Запускаем Gitea, скорее всего она начнёт падать с ошибкой `permission denied`, а Docker будет пытаться её перезапустить. При первом запуске Gitea создаёт директории для ssh ключей, но по какой-то причине они создаются из-под `root`, а не из-под пользователя `gitea`.
```sh
# Специально без -d, ждём когда в логах повалятся ошибки и нажимаем Ctrl+C
docker compose up
```
Теперь нужно из-под `root` или с помощью `sudo` указать нужные права.
```sh
# Выходим из пользователя gitea (Ctrl + D или exit)
# и выполняем команду с root правами
sudo chown -R gitea:gitea ~gitea/data
```
Снова запускаем Gitea.
```sh
sudo su - gitea
docker compose up -d
```
Если всё работает корректно, то файлы бэкапа можно удалить.
```sh
rm -rf dump gitea-dump-*.zip
```
## Кастомизация Gitea
Во всех командах подразумевается, что Gitea [установлена из бинарника](https://docs.gitea.com/installation/install-from-binary) и [запускается как `systemd` сервис](https://docs.gitea.com/installation/linux-service).
В документации есть страница, посвящённая [кастомизации Gitea](https://docs.gitea.com/administration/customizing-gitea).
## Свой `css`
### Свой `css`
Добавляем ссылку на свой файл со стилями.
@@ -131,7 +384,7 @@ sudo systemctl restart gitea
После изменения стилей, страницу в браузере нужно обновить с помощью `ctrl + f5`.
## Настройка `app.ini`
### Настройка `app.ini`
Перечень всех возможных настроек представлен в [документации](https://docs.gitea.com/administration/config-cheat-sheet).
@@ -172,7 +425,7 @@ sudo systemctl restart gitea
sudo systemctl restart gitea
```
## Изменение шаблонов страниц
### Изменение шаблонов страниц
Ищем шаблон для нужной версии в [репозитории Gitea](https://github.com/go-gitea/gitea/tree/main/templates), загружаем с помощью `wget` по такому же пути в `$GITEA_CUSTOM/templates` и редактируем.
3. `/deop <nickname>` — удалить из списка операторов.
4. Отдельной команды для просмотра списка операторов нет, но он хранится в файле `data/ops.json`.
5. `/whitelist <on|off>` — включить или выключить белый список игроков.
6. `/whitelist list` — вывести белый список игроков.
7. `/whitelist add <nickname>` — добавить игрока в белый список.
8. `/whitelist remove <nickname>` — удалить игрока из белого списка.
9. `/gamemode <0|1|2|3>` — изменить режим игры (0 — выживание, 1 — креатив, 2 — приключение, 3 — наблюдатель).
10. `/time set <day|night|<число>>` — установить время суток.
11. `/weather <clear|rain|thunder>` — изменить погоду.
12. `/tp <nickname1><nickname2>` — телепортировать первого игрока ко второму.
13. `/difficulty <peaceful|easy|normal|hard>` — изменить уровень сложности сервера.
## Домен для сервера
Если порт стандартный (`25565`), то при подключении можно просто указать домен в A-записи которого указан IP-адрес сервера. Однако если порт нестандартный или хочется сделать несколько доменных имён для одного сервера, то можно использовать SRV-записи.
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.