mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Add health check endpoint (#18465)
* chore: add health check endpoint docs: update document about health check fix: fix up Sqlite3 ping. current ping will success even if the db file is missing fix: do not expose privacy information in output field * refactor: remove HealthChecker struct * Added `/api/healthz` to install routes. This was needed for using /api/healthz endpoint in Docker healthchecks, otherwise, Docker would never become healthy if using healthz endpoint and users would not be able to complete the installation of Gitea. * Update modules/cache/cache.go * fine tune * Remove unnecessary test code. Now there are 2 routes for installation (and maybe more in future) Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: Marcos de Oliveira <marcossantos@furb.br>
This commit is contained in:
		@@ -25,3 +25,47 @@ helm install gitea gitea-charts/gitea
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
If you would like to customize your install, which includes kubernetes ingress, please refer to the complete [Gitea helm chart configuration details](https://gitea.com/gitea/helm-chart/)
 | 
			
		||||
 | 
			
		||||
## Health check endpoint
 | 
			
		||||
 | 
			
		||||
Gitea comes with a health check endpoint `/api/healthz`, you can configure it in kubernetes like this:
 | 
			
		||||
 | 
			
		||||
```yaml
 | 
			
		||||
  livenessProbe:
 | 
			
		||||
    httpGet:
 | 
			
		||||
      path: /api/healthz
 | 
			
		||||
      port: http
 | 
			
		||||
    initialDelaySeconds: 200
 | 
			
		||||
    timeoutSeconds: 5
 | 
			
		||||
    periodSeconds: 10
 | 
			
		||||
    successThreshold: 1
 | 
			
		||||
    failureThreshold: 10
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
a successful health check response will respond with http code `200`, here's example:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
HTTP/1.1 200 OK
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  "status": "pass",
 | 
			
		||||
  "description": "Gitea: Git with a cup of tea",
 | 
			
		||||
  "checks": {
 | 
			
		||||
    "cache:ping": [
 | 
			
		||||
      {
 | 
			
		||||
        "status": "pass",
 | 
			
		||||
        "time": "2022-02-19T09:16:08Z"
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "database:ping": [
 | 
			
		||||
      {
 | 
			
		||||
        "status": "pass",
 | 
			
		||||
        "time": "2022-02-19T09:16:08Z"
 | 
			
		||||
      }
 | 
			
		||||
    ]
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
for more information, please reference to kubernetes documentation [Define a liveness HTTP request](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-liveness-http-request)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user