- Go 1.23.1 or higher (only for building from source)
- Windows or Linux operating system
- Administrative privileges
- Git (for cloning the repository)
Download the latest prebuilt binary for your platform from the Releases page:
# PowerShell (as Administrator)
# Download the latest Windows binary
Invoke-WebRequest -Uri "https://github.com/therealtoxicdev/chronoserve/releases/latest/download/chronoserve_windows_amd64.exe" -OutFile "chronoserve.exe"# Download the latest Linux binary
wget https://github.com/therealtoxicdev/chronoserve/releases/latest/download/chronoserve_linux_amd64
chmod +x chronoserve_linux_amd64- Clone the repository:
git clone https://github.com/therealtoxicdev/chronoserve.git
cd chronoserve- Build the project:
make buildOn first run, ChronoServe will automatically create a config.yaml in the project root with default values. You must update the security-sensitive values before running the application.
server:
host: "localhost"
port: 8080
readTimeout: "15s"
writeTimeout: "15s"
maxHeaderBytes: 1048576 # 1MB
auth:
secretKey: "change-me" # Must be changed
tokenDuration: 24h
issuedBy: "ChronoServe"
allowedRoles: ["admin", "viewer"]
users:
admin:
username: "admin"
password: "change-me" # Must be changed
roles: ["admin"]
viewer:
username: "viewer"
password: "change-me" # Must be changed
roles: ["viewer"]
logging:
level: "info"
directory: "logs"
maxSize: 10 # 10MB
maxBackups: 5
maxAge: 30 # 30 days
compress: truewindows:
serviceCommand: "sc"
logDirectory: "C:\\ProgramData\\ChronoServe\\logs"
services: {} # Will be populated with discovered serviceslinux:
serviceCommand: "systemctl"
logDirectory: "/var/log/chronoserve"
services: {} # Will be populated with discovered services- Development mode:
make dev- Production mode:
make start- Check the server health:
curl http://localhost:8080/health- Try logging in:
curl -X POST http://localhost:8080/auth/login \
-H "Content-Type: application/json" \
-d '{"username": "admin", "password": "your-password"}'- The application will refuse to start if default credentials are detected
- All passwords should be changed from their default values
- The JWT secret key must be changed from the default value
- Use secure passwords that meet your organization's requirements
- Review the API Documentation for available endpoints
- Configure your Services
- Set up Logging
- Review Security Best Practices
-
"Security Risk Detected":
- This means you haven't changed the default security values
- Update the
secretKeyand user passwords inconfig.yaml
-
Permission Issues:
- Windows: Run as Administrator
- Linux: Use sudo or appropriate privileges
-
Port Already in Use:
- Change the port in
config.yaml - Default is 8080
- Change the port in