https://github.com/yosebyte/cgent
Containerized Nezha-agent
https://github.com/yosebyte/cgent
Last synced: 8 months ago
JSON representation
Containerized Nezha-agent
- Host: GitHub
- URL: https://github.com/yosebyte/cgent
- Owner: yosebyte
- Created: 2024-11-06T03:30:49.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-08-24T07:08:08.000Z (10 months ago)
- Last Synced: 2025-08-24T14:07:01.706Z (10 months ago)
- Language: Dockerfile
- Size: 63.5 KB
- Stars: 52
- Watchers: 1
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cgent - Containerized Nezha-agent
Cgent provides a containerized implementation of Nezha-agent, offering enhanced security through container isolation while maintaining full functionality.
## Features
- **Containerized Security**: Nezha agent runs inside a container with restricted access for enhanced safety
- **Auto-Configuration**: Minimal configuration file automatically generated on first run
- **Nezha v1 Support**: Full compatibility with Nezha monitoring system v1
- **Lightweight**: Based on Alpine Linux, minimal resource usage
- **Multi-Architecture**: Supports both `linux/amd64` and `linux/arm64` platforms
## Quick Start
Create a directory for persistent storage and run the container:
```bash
mkdir -p /root/cgent
docker run -d -v=/root/cgent/:/root/ \
--name=cgent \
--restart=always \
--net=host \
--cap-add=NET_RAW \
-e SECRET=agentsecretkey \
-e SERVER=installhost \
-e TLS=true \
ghcr.io/yosebyte/cgent
```
View the generated configuration:
```bash
cat /root/cgent/config.yml
```
## Configuration Options
| Environment Variable | Description | Default |
|---|---|---|
| `SECRET` | Nezha agent secret key from dashboard | *Required* |
| `SERVER` | Nezha dashboard hostname or IP | *Required* |
| `TLS` | Enable/disable TLS connection | `false` |
## Important Notes
- Each time the container creates a new configuration file, a different `UUID` is generated
- Always backup `/root/cgent/config.yml` before upgrading the container
- Find your `SECRET`, `SERVER`, and TLS settings in your Nezha dashboard configuration
## Nezha Dashboard Deployment (Optional)
If you need to deploy a Nezha dashboard as well:
```bash
mkdir -p /root/nezha
docker run -d -v=/root/nezha/:/dashboard/data/ \
--name=nezha \
--restart=always \
--net=host \
ghcr.io/nezhahq/nezha
```
View the dashboard configuration:
```bash
cat /root/nezha/config.yaml
```
**Important**: Always backup `/root/nezha/config.yaml` and `/root/nezha/sqlite.db` before upgrading the dashboard container.
## About Nezha
Nezha is a server monitoring system that tracks metrics such as CPU, memory, network usage, and more. This containerized agent connects to a Nezha dashboard to report monitoring data from your system.