Files

260 lines
3.0 KiB
Markdown

# OpenProject
## Overview
OpenProject is the project management and collaboration platform used by Silver Solutions.
It provides:
* Project management
* Task tracking
* Work packages
* Time tracking
* Roadmaps
* Team collaboration
* Document management
OpenProject replaces the previously planned Plane.so deployment.
---
## Service Information
### URL
```text
https://team.silveressence.net
```
### Container Name
```text
openproject
```
### Image
```text
openproject/openproject:17
```
### Docker Network
```text
internal
```
---
## Purpose
OpenProject is used for:
* Project planning
* Task management
* Development tracking
* Internal collaboration
* Customer project management
* Team planning
---
## Database
Database:
```text
openproject
```
Database User:
```text
openproject
```
Database Host:
```text
postgres
```
Database access is provided through the internal Docker network.
---
## Email Configuration
Sender Address:
```text
noreply@silveressence.net
```
Purpose:
* Password reset emails
* User notifications
* Work package notifications
* Mention notifications
* Project updates
SMTP credentials are provided by Infisical at runtime.
---
## Data Storage
Assets Location:
```text
/srv/docker/openproject/assets
```
Contains:
* Attachments
* Uploaded files
* Application assets
* User generated content
This directory must be included in backups.
---
## Secrets
The following values are provided by Infisical at runtime when the stack is deployed:
```text
POSTGRES_OPENPROJECT_PASSWORD
OPENPROJECT_SECRET_KEY_BASE
SMTP_HOST
SMTP_PORT
SMTP_USERNAME
SMTP_PASSWORD
```
Secrets must never be committed to Git.
---
## Authentication
Current Authentication:
* Local accounts
Future Considerations:
* Google OAuth2
* GitHub OAuth2
* Microsoft Entra ID
---
## Docker Configuration
Volume Mapping:
```text
/srv/docker/openproject/assets:/var/openproject/assets
```
Port Mapping:
```text
8082:80
```
Network:
```text
internal
```
OpenProject should not be exposed directly to the internet.
Access should be routed through Nginx Proxy Manager.
---
## Administration
View Logs:
```bash
docker logs openproject
```
Restart Service:
```bash
docker restart openproject
```
Open Shell:
```bash
docker exec -it openproject bash
```
---
## Backup Requirements
The following items must be backed up:
### Database
```text
openproject
```
### Assets
```text
/srv/docker/openproject/assets
```
### Secrets
```text
Infisical service path for OpenProject
```
Without these items, a complete restoration is not possible.
---
## Recovery Checklist
To restore OpenProject:
1. Restore PostgreSQL database.
2. Restore OpenProject assets directory.
3. Restore or reauthorize Infisical access and the OpenProject secret path.
4. Deploy Docker Compose stack.
5. Verify SMTP configuration.
6. Verify access through Nginx Proxy Manager.
---
## Related Services
* PostgreSQL
* Nginx Proxy Manager
* Gitea
* Portainer
---
## Related Documentation
* docs/server.md
* docs/security.md
* docs/secrets.md
* docs/backups.md
* postgres/README.md