✈ Added plane, removed npm
This commit is contained in:
51
stacks/plane/README.md
Normal file
51
stacks/plane/README.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Plane
|
||||
|
||||
Project management and issue tracking with kanban boards.
|
||||
|
||||
## Deployment
|
||||
|
||||
1. Create directories:
|
||||
```bash
|
||||
mkdir -p /mnt/user/appdata/plane/{db-data,redis-data,minio-data}
|
||||
```
|
||||
|
||||
2. Deploy via Portainer git stack or:
|
||||
```bash
|
||||
cd /mnt/user/data/flook-stacks/stacks/plane
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
3. Wait for all services to start (may take a few minutes on first run)
|
||||
|
||||
4. Access at `http://192.168.1.75:8082` or via NPM proxy
|
||||
|
||||
## Services
|
||||
|
||||
| Container | Description |
|
||||
|-----------|-------------|
|
||||
| plane-web | Frontend |
|
||||
| plane-api | Backend API |
|
||||
| plane-worker | Background jobs |
|
||||
| plane-beat-worker | Scheduled tasks |
|
||||
| plane-space | Public pages |
|
||||
| plane-proxy | Nginx proxy |
|
||||
| plane-db | PostgreSQL |
|
||||
| plane-redis | Redis |
|
||||
| plane-minio | S3-compatible storage |
|
||||
|
||||
## NPM Proxy
|
||||
|
||||
Add proxy host:
|
||||
- Domain: `plane.rishighan.com`
|
||||
- Forward: `192.168.1.75:8082`
|
||||
- Enable SSL, force SSL, HTTP/2
|
||||
|
||||
## Volumes
|
||||
|
||||
- `/mnt/user/appdata/plane/db-data` - PostgreSQL data
|
||||
- `/mnt/user/appdata/plane/redis-data` - Redis data
|
||||
- `/mnt/user/appdata/plane/minio-data` - File uploads
|
||||
|
||||
## Default Login
|
||||
|
||||
On first access, you'll create an admin account.
|
||||
147
stacks/plane/docker-compose.yml
Normal file
147
stacks/plane/docker-compose.yml
Normal file
@@ -0,0 +1,147 @@
|
||||
networks:
|
||||
plane-net:
|
||||
name: plane-net
|
||||
driver: bridge
|
||||
|
||||
services:
|
||||
plane-web:
|
||||
image: makeplane/plane-frontend:stable
|
||||
container_name: plane-web
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- NEXT_PUBLIC_API_BASE_URL=http://plane-api:8000
|
||||
- NEXT_PUBLIC_DEPLOY_URL=https://plane.rishighan.com
|
||||
depends_on:
|
||||
- plane-api
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-api:
|
||||
image: makeplane/plane-backend:stable
|
||||
container_name: plane-api
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- DEBUG=0
|
||||
- DJANGO_SETTINGS_MODULE=plane.settings.production
|
||||
- DATABASE_URL=postgresql://plane:plane@plane-db:5432/plane
|
||||
- REDIS_URL=redis://plane-redis:6379/
|
||||
- SECRET_KEY=${SECRET_KEY}
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
|
||||
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
|
||||
- AWS_S3_BUCKET_NAME=plane-uploads
|
||||
- AWS_S3_ENDPOINT_URL=http://plane-minio:9000
|
||||
- USE_MINIO=1
|
||||
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
|
||||
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
|
||||
- WEB_URL=https://plane.rishighan.com
|
||||
- CORS_ALLOWED_ORIGINS=https://plane.rishighan.com
|
||||
depends_on:
|
||||
- plane-db
|
||||
- plane-redis
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-worker:
|
||||
image: makeplane/plane-backend:stable
|
||||
container_name: plane-worker
|
||||
restart: unless-stopped
|
||||
command: ./bin/worker
|
||||
environment:
|
||||
- DEBUG=0
|
||||
- DJANGO_SETTINGS_MODULE=plane.settings.production
|
||||
- DATABASE_URL=postgresql://plane:plane@plane-db:5432/plane
|
||||
- REDIS_URL=redis://plane-redis:6379/
|
||||
- SECRET_KEY=${SECRET_KEY}
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
|
||||
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
|
||||
- AWS_S3_BUCKET_NAME=plane-uploads
|
||||
- AWS_S3_ENDPOINT_URL=http://plane-minio:9000
|
||||
- USE_MINIO=1
|
||||
depends_on:
|
||||
- plane-db
|
||||
- plane-redis
|
||||
- plane-api
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-beat-worker:
|
||||
image: makeplane/plane-backend:stable
|
||||
container_name: plane-beat-worker
|
||||
restart: unless-stopped
|
||||
command: ./bin/beat
|
||||
environment:
|
||||
- DEBUG=0
|
||||
- DJANGO_SETTINGS_MODULE=plane.settings.production
|
||||
- DATABASE_URL=postgresql://plane:plane@plane-db:5432/plane
|
||||
- REDIS_URL=redis://plane-redis:6379/
|
||||
- SECRET_KEY=${SECRET_KEY}
|
||||
depends_on:
|
||||
- plane-db
|
||||
- plane-redis
|
||||
- plane-api
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-space:
|
||||
image: makeplane/plane-space:stable
|
||||
container_name: plane-space
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- NEXT_PUBLIC_API_BASE_URL=http://plane-api:8000
|
||||
depends_on:
|
||||
- plane-api
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-proxy:
|
||||
image: makeplane/plane-proxy:stable
|
||||
container_name: plane-proxy
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8082:80"
|
||||
environment:
|
||||
- FILE_SIZE_LIMIT=5242880
|
||||
- BUCKET_NAME=plane-uploads
|
||||
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
|
||||
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
|
||||
depends_on:
|
||||
- plane-web
|
||||
- plane-api
|
||||
- plane-space
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-db:
|
||||
image: postgres:15
|
||||
container_name: plane-db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- POSTGRES_USER=plane
|
||||
- POSTGRES_PASSWORD=plane
|
||||
- POSTGRES_DB=plane
|
||||
volumes:
|
||||
- /mnt/user/appdata/plane/db-data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-redis:
|
||||
image: redis:7
|
||||
container_name: plane-redis
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /mnt/user/appdata/plane/redis-data:/data
|
||||
networks:
|
||||
- plane-net
|
||||
|
||||
plane-minio:
|
||||
image: minio/minio
|
||||
container_name: plane-minio
|
||||
restart: unless-stopped
|
||||
command: server /data --console-address ":9001"
|
||||
environment:
|
||||
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
|
||||
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
|
||||
volumes:
|
||||
- /mnt/user/appdata/plane/minio-data:/data
|
||||
networks:
|
||||
- plane-net
|
||||
5
stacks/plane/stack.env
Normal file
5
stacks/plane/stack.env
Normal file
@@ -0,0 +1,5 @@
|
||||
SECRET_KEY=supersecretkey123456789abcdefghijklmnop
|
||||
AWS_ACCESS_KEY_ID=plane
|
||||
AWS_SECRET_ACCESS_KEY=planesecret123
|
||||
MINIO_ROOT_USER=plane
|
||||
MINIO_ROOT_PASSWORD=planesecret123
|
||||
Reference in New Issue
Block a user