Add plank and sshwifty. (#858)
This commit is contained in:
parent
18ee2812b9
commit
0c237d1b69
|
@ -98,6 +98,7 @@ This is the official repository for the Tipi App Store. It contains all the apps
|
|||
- [Peppermint](https://github.com/Peppermint-Lab/peppermint) - An open source ticket management & help desk solution.
|
||||
- [Photoprism](https://github.com/photoprism/photoprism) - AI-Powered Photos App for the Decentralized Web. We are on a mission to protect your freedom and privacy.
|
||||
- [Pihole](https://github.com/pi-hole/pi-hole) - A black hole for Internet advertisements
|
||||
- [Planka](https://github.com/plankanban/planka) - Free open source kanban board for workgroups.
|
||||
- [Plausible](https://github.com/plausible/analytics) - Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics.
|
||||
- [Plex](https://github.com/plexinc/pms-docker) - Stream Movies & TV Shows
|
||||
- [PodFetch](https://github.com/SamTV12345/PodFetch) - A sleek and efficient podcast downloader.
|
||||
|
@ -115,6 +116,7 @@ This is the official repository for the Tipi App Store. It contains all the apps
|
|||
- [Send](https://gitlab.com/timvisee/send) - Simple, private file sharing
|
||||
- [SimpleX SMP](https://github.com/simplex-chat/simplexmq) - A reference implementation of the SimpleX Messaging Protocol for simplex queues over public networks.
|
||||
- [Sonarr](https://github.com/Sonarr/Sonarr) - TV show manager for Usenet and BitTorrent
|
||||
- [Sshwifty](https://github.com/nirui/sshwifty/) - Web SSH & Telnet (WebSSH & WebTelnet client)
|
||||
- [Syncthing](https://github.com/syncthing/syncthing) - Continuous File Synchronization
|
||||
- [Tailscale](https://github.com/tailscale/tailscale) - The easiest, most secure way to use WireGuard and 2FA
|
||||
- [Tautulli](https://github.com/Tautulli/Tautulli) - A Python based monitoring and tracking tool for Plex Media Server
|
||||
|
|
24
apps/planka/config.json
Normal file
24
apps/planka/config.json
Normal file
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"$schema": "../schema.json",
|
||||
"name": "Planka",
|
||||
"port": 8016,
|
||||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "planka",
|
||||
"tipi_version": 1,
|
||||
"version": "1.12.0",
|
||||
"categories": ["development"],
|
||||
"description": "The realtime kanban board for workgroups built with React and Redux.",
|
||||
"short_desc": "Free open source kanban board for workgroups.",
|
||||
"author": "Planka",
|
||||
"source": "https://github.com/plankanban/planka",
|
||||
"website": "https://docs.planka.cloud/",
|
||||
"form_fields": [
|
||||
{
|
||||
"type": "random",
|
||||
"label": "Planka Secret Key",
|
||||
"min": 32,
|
||||
"env_variable": "PLANKA_SECRET_KEY"
|
||||
}
|
||||
]
|
||||
}
|
67
apps/planka/docker-compose.yml
Normal file
67
apps/planka/docker-compose.yml
Normal file
|
@ -0,0 +1,67 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
planka:
|
||||
image: ghcr.io/plankanban/planka:1.12.0
|
||||
container_name: planka
|
||||
command: >
|
||||
bash -c
|
||||
"for i in `seq 1 30`; do
|
||||
./start.sh &&
|
||||
s=$$? && break || s=$$?;
|
||||
echo \"Tried $$i times. Waiting 5 seconds...\";
|
||||
sleep 5;
|
||||
done; (exit $$s)"
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/data/user-avatars:/app/public/user-avatars
|
||||
- ${APP_DATA_DIR}/data/project-background-images:/app/public/project-background-images
|
||||
- ${APP_DATA_DIR}/data/attachments:/app/private/attachments
|
||||
ports:
|
||||
- ${APP_PORT}:1337
|
||||
environment:
|
||||
BASE_URL: ${APP_PROTOCOL:-http}://${APP_DOMAIN}
|
||||
TRUST_PROXY: 1
|
||||
DATABASE_URL: "postgresql://postgres@postgres/planka"
|
||||
SECRET_KEY: "${PLANKA_SECRET_KEY}"
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.planka-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.planka.loadbalancer.server.port: 8016
|
||||
# Web
|
||||
traefik.http.routers.planka-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.planka-insecure.entrypoints: web
|
||||
traefik.http.routers.planka-insecure.service: planka
|
||||
traefik.http.routers.planka-insecure.middlewares: planka-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.planka.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.planka.entrypoints: websecure
|
||||
traefik.http.routers.planka.service: planka
|
||||
traefik.http.routers.planka.tls.certresolver: myresolver
|
||||
# Local domain
|
||||
traefik.http.routers.planka-local-insecure.rule: Host(`planka.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.planka-local-insecure.entrypoints: web
|
||||
traefik.http.routers.planka-local-insecure.service: planka
|
||||
traefik.http.routers.planka-local-insecure.middlewares: planka-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.planka-local.rule: Host(`planka.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.planka-local.entrypoints: websecure
|
||||
traefik.http.routers.planka-local.service: planka
|
||||
traefik.http.routers.planka-local.tls: true
|
||||
depends_on:
|
||||
- postgres
|
||||
|
||||
postgres:
|
||||
image: postgres:14-alpine
|
||||
container_name: planka-db
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
|
||||
environment:
|
||||
POSTGRES_DB: "planka"
|
||||
POSTGRES_HOST_AUTH_METHOD: "trust"
|
||||
networks:
|
||||
- tipi_main_network
|
30
apps/planka/metadata/description.md
Normal file
30
apps/planka/metadata/description.md
Normal file
|
@ -0,0 +1,30 @@
|
|||
# Planka
|
||||
#### Elegant open source project tracking
|
||||
|
||||
![](https://raw.githubusercontent.com/plankanban/planka/master/demo.gif)
|
||||
|
||||
[**Client demo**](https://plankanban.github.io/planka) (without server features).
|
||||
|
||||
## Features
|
||||
|
||||
- Create projects, boards, lists, cards, labels and tasks
|
||||
- Add card members, track time, set a due date, add attachments, write comments
|
||||
- Markdown support in a card description and comment
|
||||
- Filter by members and labels
|
||||
- Customize project background
|
||||
- Real-time updates
|
||||
- User notifications
|
||||
- Internationalization
|
||||
|
||||
## Tech stack
|
||||
|
||||
- React, Redux, Redux-Saga, Redux-ORM, Semantic UI React, react-beautiful-dnd
|
||||
- Sails.js, Knex.js
|
||||
- PostgreSQL
|
||||
|
||||
## Username and Password
|
||||
|
||||
After installing login with these credentials:
|
||||
|
||||
- Username: demo@demo.demo
|
||||
- Password: demo
|
BIN
apps/planka/metadata/logo.jpg
Normal file
BIN
apps/planka/metadata/logo.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.6 KiB |
17
apps/sshwifty/config.json
Normal file
17
apps/sshwifty/config.json
Normal file
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "../schema.json",
|
||||
"name": "Sshwifty",
|
||||
"port": 8273,
|
||||
"available": true,
|
||||
"exposable": true,
|
||||
"id": "sshwifty",
|
||||
"tipi_version": 1,
|
||||
"version": "0.2.35-beta-release",
|
||||
"categories": ["development"],
|
||||
"description": "Sshwifty is a SSH and Telnet connector made for the Web. It can be deployed on your computer or server to provide SSH and Telnet access interface for any compatible (standard) web browser.",
|
||||
"short_desc": "Web SSH & Telnet (WebSSH & WebTelnet client)",
|
||||
"author": "Nirui",
|
||||
"source": "https://github.com/nirui/sshwifty",
|
||||
"website": "https://sshwifty-demo.nirui.org/",
|
||||
"form_fields": []
|
||||
}
|
36
apps/sshwifty/docker-compose.yml
Normal file
36
apps/sshwifty/docker-compose.yml
Normal file
|
@ -0,0 +1,36 @@
|
|||
version: "3.5"
|
||||
services:
|
||||
sshwifty:
|
||||
image: niruix/sshwifty:0.2.35-beta-release
|
||||
restart: unless-stopped
|
||||
container_name: sshwifty
|
||||
privileged: true
|
||||
ports:
|
||||
- ${APP_PORT}:8182
|
||||
networks:
|
||||
- tipi_main_network
|
||||
labels:
|
||||
# Main
|
||||
traefik.enable: true
|
||||
traefik.http.middlewares.sshwifty-web-redirect.redirectscheme.scheme: https
|
||||
traefik.http.services.sshwifty.loadbalancer.server.port: 8273
|
||||
# Web
|
||||
traefik.http.routers.sshwifty-insecure.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.sshwifty-insecure.entrypoints: web
|
||||
traefik.http.routers.sshwifty-insecure.service: sshwifty
|
||||
traefik.http.routers.sshwifty-insecure.middlewares: sshwifty-web-redirect
|
||||
# Websecure
|
||||
traefik.http.routers.sshwifty.rule: Host(`${APP_DOMAIN}`)
|
||||
traefik.http.routers.sshwifty.entrypoints: websecure
|
||||
traefik.http.routers.sshwifty.service: sshwifty
|
||||
traefik.http.routers.sshwifty.tls.certresolver: myresolver
|
||||
# Local domain
|
||||
traefik.http.routers.sshwifty-local-insecure.rule: Host(`sshwifty.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.sshwifty-local-insecure.entrypoints: web
|
||||
traefik.http.routers.sshwifty-local-insecure.service: sshwifty
|
||||
traefik.http.routers.sshwifty-local-insecure.middlewares: sshwifty-web-redirect
|
||||
# Local domain secure
|
||||
traefik.http.routers.sshwifty-local.rule: Host(`sshwifty.${LOCAL_DOMAIN}`)
|
||||
traefik.http.routers.sshwifty-local.entrypoints: websecure
|
||||
traefik.http.routers.sshwifty-local.service: sshwifty
|
||||
traefik.http.routers.sshwifty-local.tls: true
|
8
apps/sshwifty/metadata/description.md
Normal file
8
apps/sshwifty/metadata/description.md
Normal file
|
@ -0,0 +1,8 @@
|
|||
# Sshwifty Web SSH & Telnet Client
|
||||
|
||||
**Sshwifty is a SSH and Telnet connector made for the Web.** It can be deployed
|
||||
on your computer or server to provide SSH and Telnet access interface for any
|
||||
compatible (standard) web browser.
|
||||
|
||||
![Web Interface](https://github.com/nirui/sshwifty/blob/master/Screenshot.png?raw=true)
|
||||
|
BIN
apps/sshwifty/metadata/logo.jpg
Normal file
BIN
apps/sshwifty/metadata/logo.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
Loading…
Reference in New Issue
Block a user