如果你在 Docker 中运行的 Gitea 忘记了管理员密码,可以通过 gitea admin
命令直接修改密码,而无需手动修改数据库。本教程适用于
Docker 部署的 Gitea,并介绍如何进入容器执行密码重置。
gitea admin
命令重置密码docker exec -it gitea /bin/bash
(如果你的容器名不是 gitea
,请替换为实际名称)
git
用户Gitea 默认以 git
用户运行,不能直接以 root
执行命令:
su git -s /bin/bash
gitea admin user change-password --username mobaijun --password mm123456 --config /data/gitea/conf/app.ini
参数说明 :
--username
:要修改的管理员用户名(如 mobaijun
)--password
:新密码(如 mm123456
)--config
:Gitea 配置文件路径(默认 /data/gitea/conf/app.ini
)exit # 退出 git 用户
exit # 退出容器
http://your-server:3000
)。mm123456
登录 mobaijun
账户。Gitea is not supposed to be run as root
原因 :Gitea 不允许以 root
用户运行。
解决 :确保切换到 git
用户:
su git -s /bin/bash
permission denied
原因 :/data/gitea
目录权限问题。
解决 :
chown -R git:git /data/gitea
su git
失败可能原因 :容器里没有 git
用户。
解决 :
docker exec -u git gitea gitea admin user change-password --username mobaijun --password mm123456 --config /data/gitea/conf/app.ini
直接以 git
用户执行命令。
方法 | 适用场景 | 命令 |
---|---|---|
gitea admin | 推荐方式,无需改数据库 | gitea admin user change-password --username xxx --password yyy |
推荐使用 gitea admin
方式 ,避免直接操作数据库的风险。