Gitea 在运行的时候提示错误:
gitea docker An error occurred:
ReadBy, pq: sorry, too many clients already (53300)
确认连接数
在服务器上运行命令: docker exec -it gitea-db psql -U gitea -d gitea 进入容器。
然后运行命令: SHOW max_connections; 来查看当前的连接数。
根据上面的输出可以看到数据库能接受的连接数为 200。
psql (18.6 (Debian 18.6-1.pgdg13+2))
Type "help" for help.
gitea=# SHOW max_connections;
max_connections
-----------------
200
(1 row)
gitea=#
修改策略
可以同时修改 Gitea 容器数据库中允许的连接数,增加更多和修改 Gitea 的配置文件限制 Gitea 可以使用的连接数。
在容器配置文件中,添加下面的内容:
command:
- postgres
- -c
- max_connections=200
新增上面的连接数配置。
Gitea 中配置可用的最大连接数:
GITEA__database__MAX_OPEN_CONNS: 50
GITEA__database__MAX_IDLE_CONNS: 10
GITEA__database__CONN_MAX_LIFETIME: 300s
完成上面配置修改后,需要重启容器。
重启容器的命令为:
docker compose up -d --force-recreate gitea
docker compose up -d --force-recreate database
Gitea 和数据库的实例都需要重启。
上面的排查过程是在 AI 的指引下一步一步完成,有 AI 看 DevOps 的工作可能真要失业了。
AI 提供的解决方案足够清晰,按照完整的路径很容易就能完成服务器的修改和故障排查。
https://www.isharkfly.com/t/gitea-sorry-too-many-clients-already/5244





Comments