Files
KNELProductionContainers/CloudronPackages/EasyGate/EasyGate-BulldNotes.md

147 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Easy-gate Build Notes for Cloudron
This document provides instructions for building, testing, and deploying Easy-gate to your Cloudron instance.
## Overview
Easy-gate is a simple web application designed to serve as the central hub for your self-hosted infrastructure. It allows you to organize and access all your self-hosted services from a single dashboard.
Key features:
- Real-time parsing of services and notes from a configuration file (JSON/YAML)
- Ability to assign items to specific user groups based on IP addresses
- Organization of services into categories
- Customizable theme and icons
## Building the Package
### Prerequisites
- A Linux environment with Docker installed
- Cloudron CLI tool installed (`npm install -g cloudron`)
- Authenticated with your Cloudron instance (`cloudron login`)
### Build Steps
1. Create a directory for your build and copy all files into it:
```bash
mkdir easy-gate-build
cd easy-gate-build
# Copy CloudronManifest.json, Dockerfile, start.sh, and easy-gate.json
```
2. Create a logo.png file for the icon or download one from the Easy-gate repository.
3. Build the package:
```bash
cloudron build
```
This command will create a package file (usually named `easy-gate-1.0.0.tar.gz`).
## Testing Locally
You can test the Docker container locally before deploying to Cloudron:
```bash
# Build the Docker image
docker build -t easy-gate-local .
# Run the container
docker run -p 8080:8080 -e EASY_GATE_BEHIND_PROXY=true easy-gate-local
```
Access the dashboard at http://localhost:8080 to verify it works correctly.
## Deploying to Cloudron
1. Upload the built package to your Cloudron:
```bash
cloudron install —app easy-gate.example.com
```
2. Or, if you want to update an existing installation:
```bash
cloudron update —app easy-gate.example.com
```
3. Configure your Easy-gate instance:
After installation, youll need to edit the configuration file to add your services. You can do this in two ways:
### Option 1: Using Cloudron File Manager
1. Go to your Cloudron dashboard
2. Click on the Easy-gate application
3. Go to “Files” tab
4. Navigate to `/app/data/`
5. Edit `easy-gate.json`
### Option 2: SSH Access
1. SSH into your Cloudron server
2. Access the apps data directory:
```bash
cloudron exec —app easy-gate.example.com
```
3. Edit the configuration file:
```bash
nano /app/data/easy-gate.json
```
## Configuration File Structure
The configuration file uses the following structure:
```json
{
“title”: “My Dashboard”,
“theme”: {
“background”: “#f8f9fa”,
“foreground”: “#212529”,
“custom_css”: “”
},
“groups”: [
{
“name”: “group-name”,
“subnet”: “192.168.1.1/24”
}
],
“categories”: [
{
“name”: “Category Name”,
“services”: [
{
“name”: “Service Name”,
“url”: “https://service.example.com”,
“description”: “Service Description”,
“icon”: “”,
“groups”: [“group-name”]
}
]
}
],
“notes”: [
{
“name”: “Note Title”,
“text”: “Note Content”,
“groups”: [“group-name”]
}
],
“behind_proxy”: true
}
```
## Troubleshooting
- If you encounter “502 Bad Gateway” errors, check that the application is running inside the container: `cloudron logs -f —app easy-gate.example.com`
- Make sure the `behind_proxy` setting is set to `true` in your configuration file
- Verify that the user groups and subnets are configured correctly
- Check the logs for any specific error messages
## Maintenance
Easy-gate is designed to be low-maintenance. To update to a newer version, simply rebuild the package with the latest release and update your Cloudron app.