Plane
Project management tool from the future. An open-source software development tool to manage issues, sprints, and product roadmaps with peace of mind.
Services
plane-web
/usr/local/bin/start.sh web/server.js web
Restart Policy
always
Build
[object Object]
Env Vars
plane-space
/usr/local/bin/start.sh space/server.js space
Restart Policy
always
Build
[object Object]
Env Vars
plane-api
./bin/takeoff
Restart Policy
always
Build
[object Object]
Env Vars
plane-worker
./bin/worker
Restart Policy
always
Build
[object Object]
Env Vars
plane-beat-worker
./bin/beat
Restart Policy
always
Build
[object Object]
Env Vars
plane-db
postgres:15.2-alpine
Command
postgres -c 'max_connections=1000'
Volumes
/var/lib/postgresql/data : /portainer/Files/AppData/Config/plane/pgdata
always
Env Vars
${PGUSER}=''
${PGDATABASE}=''
${PGPASSWORD}=''
/var/lib/postgresql/data=''
plane-redis
redis:6.2.7-alpine
Volumes
/data : /portainer/Files/AppData/Config/plane/redisdata
always
Env Vars
plane-minio
minio/minio
Command
server /export --console-address ":9090"
Volumes
/export : /portainer/Files/AppData/Config/plane/uploads
always
Env Vars
${AWS_ACCESS_KEY_ID}=''
${AWS_SECRET_ACCESS_KEY}=''
createbuckets
minio/mc
Entrypoint
/bin/sh -c " /usr/bin/mc config host add plane-minio https://plane-minio:9000 \$AWS_ACCESS_KEY_ID \$AWS_SECRET_ACCESS_KEY; /usr/bin/mc mb plane-minio/\$AWS_S3_BUCKET_NAME; /usr/bin/mc anonymous set download plane-minio/\$AWS_S3_BUCKET_NAME; exit 0; "
Env Vars
Installation
Via Portainer
- Ensure both Docker and Portainer are installed, and up-to-date
- Log into your Portainer web UI
- Under Settings → App Templates, paste the below URL
- Head to Home → App Templates, and the list of apps will show up
- Select the app you wish to deploy, fill in any config options, and hit Deploy
Template Import URL
https://raw.githubusercontent.com/Lissy93/portainer-templates/main/templates.json
Show Me
Via Docker Run
Service #1 - plane-web
docker run --name plane-db -d \
postgres -c 'max_connections=1000' \
-e "" \
-e "" \
-e "" \
-e "" \
-v /portainer/Files/AppData/Config/plane/pgdata:/var/lib/postgresql/data \
--restart=always \
postgres:15.2-alpine
Service #2 - plane-space
docker run --name plane-redis -d \
-v /portainer/Files/AppData/Config/plane/redisdata:/data \
--restart=always \
redis:6.2.7-alpine
Service #3 - plane-api
docker run --name plane-minio -d \
server /export --console-address ":9090" \
-e "" \
-e "" \
-v /portainer/Files/AppData/Config/plane/uploads:/export \
--restart=always \
minio/minio
Service #4 - plane-worker
docker run --name createbuckets -d \
minio/mc
Via Docker Compose
Save this file as docker-compose.yml
and run docker-compose up -d
Use this only as a guide.
- name: plane-web
command: /usr/local/bin/start.sh web/server.js web
build:
context: .
dockerfile: ./web/Dockerfile.web
args:
DOCKER_BUILDKIT: 1
restart_policy: always
env: []
- name: plane-space
command: /usr/local/bin/start.sh space/server.js space
build:
context: .
dockerfile: ./space/Dockerfile.space
args:
DOCKER_BUILDKIT: 1
restart_policy: always
env: []
- name: plane-api
command: ./bin/takeoff
build:
context: ./apiserver
dockerfile: Dockerfile.api
args:
DOCKER_BUILDKIT: 1
restart_policy: always
env: []
- name: plane-worker
command: ./bin/worker
build:
context: ./apiserver
dockerfile: Dockerfile.api
args:
DOCKER_BUILDKIT: 1
restart_policy: always
env: []
- name: plane-beat-worker
command: ./bin/beat
build:
context: ./apiserver
dockerfile: Dockerfile.api
args:
DOCKER_BUILDKIT: 1
restart_policy: always
env: []
- name: plane-db
image: postgres:15.2-alpine
command: postgres -c 'max_connections=1000'
volumes:
- bind: /portainer/Files/AppData/Config/plane/pgdata
container: /var/lib/postgresql/data
restart_policy: always
env:
- name: ${PGUSER}
value: ''
- name: ${PGDATABASE}
value: ''
- name: ${PGPASSWORD}
value: ''
- name: /var/lib/postgresql/data
value: ''
- name: plane-redis
image: redis:6.2.7-alpine
volumes:
- bind: /portainer/Files/AppData/Config/plane/redisdata
container: /data
restart_policy: always
env: []
- name: plane-minio
image: minio/minio
command: server /export --console-address ":9090"
volumes:
- bind: /portainer/Files/AppData/Config/plane/uploads
container: /export
restart_policy: always
env:
- name: ${AWS_ACCESS_KEY_ID}
value: ''
- name: ${AWS_SECRET_ACCESS_KEY}
value: ''
- name: createbuckets
image: minio/mc
entrypoint: >
/bin/sh -c " /usr/bin/mc config host add plane-minio https://plane-minio:9000
\$AWS_ACCESS_KEY_ID \$AWS_SECRET_ACCESS_KEY; /usr/bin/mc mb
plane-minio/\$AWS_S3_BUCKET_NAME; /usr/bin/mc anonymous set download
plane-minio/\$AWS_S3_BUCKET_NAME; exit 0; "
env: []
Alternative Methods
For more installation options, see the Documentation in the GitHub repo
Container Documentation
plane-db Documentation
The PostgreSQL object-relational database system provides reliability and data integrity.
plane-redis Documentation
Redis is the world’s fastest data platform for caching, vector search, and NoSQL databases.
plane-minio Documentation
Multi-Cloud Object Storage
createbuckets Documentation
Minio Client (mc) provides a modern alternative to UNIX commands like ls, cat, cp, mirror, diff etc.