feat(maxun): add Maxun

This commit is contained in:
redbeardymcgee 2025-04-12 19:45:52 -05:00
parent ddb6721ca7
commit 8e2fce82bb
9 changed files with 171 additions and 3 deletions

View file

@ -159,10 +159,8 @@ that I intend to add to this repository. It is still growing, and I welcome
- [x] [Calibre-web](https://github.com/janeczku/calibre-web) - [x] [Calibre-web](https://github.com/janeczku/calibre-web)
- [x] [ChartDB](https://chartdb.io/) - [x] [ChartDB](https://chartdb.io/)
- [x] [Checkmate](https://github.com/bluewave-labs/checkmate) - [x] [Checkmate](https://github.com/bluewave-labs/checkmate)
- [ ] [Code::Stats](https://codestats.net/)
- [x] [dash.](https://getdashdot.com/) - [x] [dash.](https://getdashdot.com/)
- [x] [Dashy](https://dashy.to) - [x] [Dashy](https://dashy.to)
- [ ] [Dittofeed](https://www.dittofeed.com)
- [ ] [Duplicacy](https://duplicacy.com/) - [ ] [Duplicacy](https://duplicacy.com/)
- [ ] [Duplicati](https://duplicati.com/) - [ ] [Duplicati](https://duplicati.com/)
- [x] [Filebrowser](https://filebrowser.org/) - [x] [Filebrowser](https://filebrowser.org/)
@ -195,7 +193,7 @@ that I intend to add to this repository. It is still growing, and I welcome
- [x] [Linkwarden](https://linkwarden.app/) - [x] [Linkwarden](https://linkwarden.app/)
- [x] [Lounge](https://thelounge.chat) - [x] [Lounge](https://thelounge.chat)
- [x] [Matrix](https://matrix.org/) - [x] [Matrix](https://matrix.org/)
- [ ] [Maxun](https://github.com/getmaxun/maxun) - [x] [Maxun](https://github.com/getmaxun/maxun)
- [x] [Mealie](https://mealie.io/) - [x] [Mealie](https://mealie.io/)
- [x] [Memos](https://usememos.com) - [x] [Memos](https://usememos.com)
- [x] [Miniflux](https://miniflux.app/) - [x] [Miniflux](https://miniflux.app/)

View file

@ -0,0 +1,31 @@
[Unit]
Description=Maxun backend
Requires=maxun-postgres.service
Requires=maxun-redis.service
Requires=maxun-minio.service
After=maxun-postgres.service
After=maxun-redis.service
After=maxun-minio.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/getmaxun/maxun-backend:latest
ContainerName=maxun-backend
AutoUpdate=registry
Network=maxun.network
HostName=maxun-backend
PublishPort=8080:8080
Volume=/var/run/dbus:/var/run/dbus
EnvironmentFile=maxun.env
Environment=PLAYWRIGHT_BROWSERS_PATH=/ms-playwright
Environment=PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=0
Environment=CHROMIUM_FLAGS="--disable-gpu --no-sandbox --headless=new"

View file

@ -0,0 +1,25 @@
[Unit]
Description=Maxun Minio
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/minio
ContainerName=maxun-minio
AutoUpdate=registry
Network=maxun.network
HostName=maxun-minio
PublishPort=9000:9000
PublishPort=9001:9001
Volume=maxun-minio:/data
Environment=MINIO_ROOT_USER=minio-root-user
Secret=maxun-minio-root-password,type=env,target=MINIO_ROOT_PASSWORD

View file

@ -0,0 +1,20 @@
[Unit]
Description=Maxun postgres
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/postgres:13
ContainerName=maxun-postgres
AutoUpdate=registry
Network=maxun.network
HostName=maxun-postgres
PublishPort=5432:5432
Volume=maxun-postgres:/var/lib/postgresql/data

View file

@ -0,0 +1,22 @@
[Unit]
Description=Maxun Redis
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/redis:6
ContainerName=maxun-redis
AutoUpdate=registry
Network=maxun.network
HostName=maxun-redis
PublishPort=6379:6379
Volume=maxun-redis:/data
EnvironmentFile=maxun.env

View file

@ -0,0 +1,22 @@
[Unit]
Description=Maxun frontend
Requires=maxun-backend.service
After=maxun-backend.service
[Service]
Restart=on-failure
TimeoutStartSec=900
[Install]
WantedBy=default.target
[Container]
Image=docker.io/getmaxun/maxun-frontend:latest
ContainerName=maxun
AutoUpdate=registry
Network=maxun.network
HostName=maxun
PublishPort=5173:5173
EnvironmentFile=maxun.env

39
quadlets/maxun/maxun.env Normal file
View file

@ -0,0 +1,39 @@
# App Setup
NODE_ENV=production # Set to 'development' or 'production' as required
JWT_SECRET= # Replace with a secure JWT secret key
DB_NAME=maxun # Your PostgreSQL database name
DB_USER=postgres # PostgreSQL username
DB_PASSWORD=postgres # PostgreSQL password
DB_HOST=postgres # Host for PostgreSQL in Docker
DB_PORT=5432 # Port for PostgreSQL (default: 5432)
ENCRYPTION_KEY=f4d5e6a7b8c9d0e1f23456789abcdef01234567890abcdef123456789abcdef0 # Key for encrypting sensitive data (passwords and proxies)
MINIO_ENDPOINT=minio # MinIO endpoint in Docker
MINIO_PORT=9000 # Port for MinIO (default: 9000)
MINIO_CONSOLE_PORT=9001 # Web UI Port for MinIO (default: 9001)
MINIO_ACCESS_KEY=minio_access_key # MinIO access key
MINIO_SECRET_KEY=minio_secret_key # MinIO secret key
REDIS_HOST=redis # Redis host in Docker
REDIS_PORT=6379 # Redis port (default: 6379)
REDIS_PASSWORD=redis_password # Redis password (This is optional. Needed to authenticate with a password-protected Redis instance; if not set, Redis will connect without authentication.)
# Backend and Frontend URLs and Ports
BACKEND_PORT=8080 # Port to run backend on. Needed for Docker setup
FRONTEND_PORT=5173 # Port to run frontend on. Needed for Docker setup
BACKEND_URL=http://localhost:8080 # URL on which the backend runs. You can change it based on your needs.
PUBLIC_URL=http://localhost:5173 # URL on which the frontend runs. You can change it based on your needs.
VITE_BACKEND_URL=http://localhost:8080 # URL used by frontend to connect to backend. It should always have the same value as BACKEND_URL
VITE_PUBLIC_URL=http://localhost:5173 # URL used by backend to connect to frontend. It should always have the same value as PUBLIC_URL
# Optional Google OAuth settings for Google Sheet Integration
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GOOGLE_REDIRECT_URI=your_google_redirect_uri
# Optional Airtable OAuth settings for Airtable Integration
AIRTABLE_CLIENT_ID=your_airtable_client_id
AIRTABLE_REDIRECT_URI=http://localhost:8080/auth/airtable/callback
# Telemetry Settings - Please keep it enabled. Keeping it enabled helps us understand how the product is used and assess the impact of any new changes.
MAXUN_TELEMETRY=true

View file

@ -0,0 +1,6 @@
[Unit]
Description=Maxun network
[Network]
NetworkName=maxun

View file

@ -0,0 +1,5 @@
[Volume]
VolumeName=maxun-postgres
VolumeName=maxun-redis
VolumeName=maxun-minio