Forgejo
官方网站
Forgejo 是一个开源的、自托管的 Git 服务平台,基于 Gitea 分支开发,提供轻量级、高效的代码托管方案。
官方网站:https://forgejo.org
Docker方式安装
compose文件
创建 compose.yml
文件,内容如下:
version: '3'
services:
forgejo:
image: codeberg.org/forgejo/forgejo:latest
container_name: forgejo
restart: always
environment:
- USER_UID=1000
- USER_GID=1000
- FORGEJO__database__DB_TYPE=postgres
- FORGEJO__database__HOST=db:5432
- FORGEJO__database__NAME=forgejo
- FORGEJO__database__USER=forgejo
- FORGEJO__database__PASSWD=forgejo_password
ports:
- "3000:3000"
- "222:22"
volumes:
- ./data:/data
depends_on:
- db
db:
image: postgres:14
container_name: forgejo-db
restart: always
environment:
- POSTGRES_USER=forgejo
- POSTGRES_PASSWORD=forgejo_password
- POSTGRES_DB=forgejo
volumes:
- ./postgres:/var/lib/postgresql/data
env文件
创建 .env
文件(可选),用于集中管理环境变量:
FORGEJO_VERSION=latest
POSTGRES_USER=forgejo
POSTGRES_PASSWORD=forgejo_password
POSTGRES_DB=forgejo
USER_UID=1000
USER_GID=1000
启动
在 compose.yml
所在目录执行:
docker compose up -d
启动后访问 http://localhost:3000
完成首次配置。
配置文件
Forgejo 配置文件位于容器内路径 /data/gitea/conf/app.ini
,首次启动后自动生成,常用配置项示例如下:
[server]
DOMAIN = git.example.com
HTTP_PORT = 3000
ROOT_URL = https://git.example.com/
SSH_PORT = 22
DISABLE_SSH = false
[database]
DB_TYPE = postgres
HOST = db:5432
NAME = forgejo
USER = forgejo
PASSWD = forgejo_password
[security]
INSTALL_LOCK = true
修改配置后需重启容器生效。
备注
- 推荐使用反向代理(如Nginx或Traefik)实现HTTPS访问。
- 定期备份数据目录(
./data
)和数据库目录(./postgres
)。 - 更新镜像前务必备份数据,避免数据丢失。
- 查看日志排查问题:
docker compose logs -f forgejo