CREATE DATABASE gitea CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'gitea'@'localhost' IDENTIFIED BY 'xxxxxx';
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'%';
FLUSH PRIVILEGES;
-- MySQL 8.0 默认使用了更安全的 caching_sha2_password 认证插件,但部分客户端可能不支持
ALTER USER 'gitea'@'192.168.0.%' IDENTIFIED WITH mysql_native_password BY 'gitea12345678';
FLUSH PRIVILEGES;
mkdir -p /xqd/docker/gitea/{data,config}
/xqd/docker/gitea
下新建 docker-compose.yml文件version: '3'
services:
gitea:
image: gitea/gitea:latest
container_name: gitea
restart: always
environment:
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=192.168.0.100:3306 # MySQL服务器IP
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=password
volumes:
- /xqd/docker/gitea/data:/data # 数据持久化
- /xqd/docker/gitea/config:/etc/gitea # 配置文件
ports:
- "2001:3000" # 宿主机2001 → 容器3000(Web)
- "2222:22" # 宿主机2222 → 容器22(SSH)
networks:
- gitea-net
networks:
gitea-net:
driver: bridge
i18n
[i18n]
LANGS = zh-CN,en-US # 中文优先,英文为备选
NAMES = 中文,English # 对应语言的显示名称
配置发送邮箱
ENABLED = true
FROM = 84597585@qq.com
PROTOCOL = smtps
SMTP_ADDR = smtp.qq.com
SMTP_PORT = 587
USER = 84597585@qq.com
PASSWD = tbndbceokcgobgde
显示git clone 时的端口(和docker compose中映射的端口一致)
[server]
SSH_DOMAIN = xuqiudong.us.to # 你的域名或IP
SSH_PORT = 2222 # 与docker-compose.yml中映射的宿主机端口一致
SSH_LISTEN_PORT = 22 # 容器内SSH服务端口(保持22)
修改配置后重启容器
docker compose restart
我的仓库设置:
本地 推送到gitea → 同步到gitee