> For AI agents: the complete documentation index is available at https://www.tteam.icu/llms.txt, the full documentation bundle is available at https://www.tteam.icu/llms-full.txt.

# gitea

[官方文档](https://docs.gitea.com/) | [开源地址](https://github.com/go-gitea/gitea) | [runner地址](https://gitea.com/gitea/act_runner)

Gitea 是轻量级代码托管服务，适合个人、家庭服务器或小团队使用。相比 GitLab，它的资源占用更低，部署和维护成本也更小。

如果只需要 Git 仓库、Issue、Pull Request 和简单 CI Runner，Gitea 通常比 GitLab 更适合低配置机器。

## 启动

```yml file="./gitea/docker-compose.yml" title="docker-compose.yml"
version: "3"

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:1.26.0
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=postgres
      - GITEA__database__HOST=db:5432
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - ./bak:/bak
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3030:3000"
    depends_on:
      - db

  db:
    image: postgres:14
    restart: always
    environment:
      - POSTGRES_USER=gitea
      - POSTGRES_PASSWORD=gitea
      - POSTGRES_DB=gitea
    networks:
      - gitea
    volumes:
      - ./postgres:/var/lib/postgresql/data

```

## 备份和恢复

备份前建议先确认数据目录、数据库类型和附件存储位置。下面命令会调用 Gitea 自带的 dump 功能导出数据。

### 备份

```bash
docker exec -u git -it -w /bak $(docker ps -qf 'name=^gitea$') bash -c '/usr/local/bin/gitea dump -c /data/gitea/conf/app.ini'
```

### 恢复

官方暂时没有提供完全自动化的恢复流程。迁移时建议先准备同版本 Gitea，再按官方文档恢复数据库、仓库、附件和 `app.ini` 配置。
