Archived
Private
Public Access
1
0
This repository has been archived on 2026-02-04. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
ProjectManager/README.md
2024-03-13 22:17:35 +01:00

67 lines
3.1 KiB
Markdown

# Project Manager
The ProjectManager is a tool for managing multiple PocketBase instances.
It is an easy-to-use web interface for creating, editing and deleting PocketBase instances.
## Features
- [x] Automatic Docker configuration
- [x] Automatic DNS Mapping
- [x] Automatic SSL configuration using NginxProxyManager
- [x] Multiple languages
- [x] Own domains
- [ ] Export / import projects
## Installation
The installation is done using a Docker-Compose file. Two containers, one for the backend and one for the frontend, are started here.
The default configuration looks like this:
```yml
version: '3.0'
services:
frontend:
image: ghcr.io/leonhoppe/projectmanager/frontend:latest
restart: unless-stopped
environment:
- BACKEND=https://api.example.com
ports:
- '4220:4000'
backend:
image: ghcr.io/leonhoppe/projectmanager/backend:latest
restart: unless-stopped
environment:
- FRONTEND=https://example.com
- GENERAL__DATABASE=server=1.2.3.4;database=ProjectManager;user=ProjectManager;password=changeMe
- GENERAL__ROOT=/projects/
- PROXY__ENABLE=true
- PROXY__URL=https://proxy.example.com
- PROXY__EMAIL=admin@example.com
- PROXY__PASSWORD=changeMe
- PROXY__DOMAIN=api.example.com
- PROXY__HOST=1.2.3.4
ports:
- '4221:80'
volumes:
- /var/run/docker.sock:/var/run/docker.sock
```
### Environment variables
| Variable | Bedeutung |
|-------------------|-----------------------------------------------------------------|
| BACKEND | The backend url |
| FRONTEND | The frontend url |
| GENERAL__DATABASE | The MySql connection string |
| GENERAL__ROOT | Folder on the host system for storing the PocketBase files |
| PROXY__ENABLE | Enables built-in SSL encryption with NginxProxyManager |
| PROXY__URL | The URL for the NginxProxyManager web interface |
| PROXY__EMAIL | Email address for an admin user of NginxProxyManager |
| PROXY__PASSWORD | Password for an admin user of NginxProxyManager |
| PROXY__DOMAIN | Standard domain for PocketBase instances ([id].api.example.com) |
| PROXY__HOST | Server host address (for the reverse proxy) |
### Edit source code and create Docker images yourself
If you want to edit the source code yourself, it is of course available to you. To use the backend in debug mode you should use a
``appsettings.Development.json`` file in the main directory to create the appropriate configuration for the development environment.
For debugging I recommend ``npm run dev:ssr`` to start the frontend and ``dotnet run`` to start the backend. Unless you're done with the edits
there is a ``docker-compose.example.yml`` file in the repository that automatically rebuilds the source code and starts the containers.
Alternatively, you can build them yourself with ``docker build``.