Added new app (Netbox) (#605)

* Added new app (Netbox)

Added new application--Netbox is an IP address and datacenter infrastructure management platform originally developed by engineers at Digital Ocean. It is particularly helpful for anyone managing medium to large networks. Further documentation is linked in the deployment information, the script has been formatted using Prettier, and its associated logo has been formatted to match Caprover's layout.

* Updated formatting per Caprover .prettierrc

* Added tag-based timer app (traggo)

Traggo is a tag-based time tracking tool. In Traggo there are no tasks, only tagged time spans.

With tags, Traggo tries to be as customizable as possible, ie-if you work on different projects you could add a `project` tag. If you like to see statistics from the different things you do, you could add tags with values like `email`, `programming`, `meeting`. You can do it just as you like.
This commit is contained in:
Stephen Davis 2022-01-20 18:24:01 -05:00 committed by GitHub
parent 35266adc56
commit 47dfe491b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 158 additions and 0 deletions

119
public/v4/apps/netbox.yml Normal file
View File

@ -0,0 +1,119 @@
captainVersion: 4
services:
$$cap_appname-db:
image: postgres:$$cap_pg_version
volumes:
- $$cap_appname-db-data:/var/lib/postgresql/data
restart: always
environment:
POSTGRES_USER: $$cap_pg_user
POSTGRES_PASSWORD: $$cap_pg_pass
POSTGRES_DB: $$cap_pg_name
PGDATA: /var/lib/postgresql/data
caproverExtra:
notExposeAsWebApp: 'true'
$$cap_appname-redis:
volumes:
- $$cap_appname-redis-data:/data
restart: always
environment:
REDIS_PASSWORD: $$cap_redis_password
caproverExtra:
dockerfileLines:
- FROM redis:$$cap_redis_version
- CMD exec redis-server --requirepass "$$cap_redis_password"
notExposeAsWebApp: 'true'
$$cap_appname:
depends_on:
- $$cap_appname-db
- $$cap_appname-redis
image: lscr.io/linuxserver/netbox:$$cap_netbox_version
volumes:
- $$cap_appname-data:/config
- $$cap_appname-scripts:/app/netbox/scripts
- $$cap_appname-reports:/app/netbox/netbox/reports
restart: unless-stopped
environment:
TZ: $$cap_time_zone
SUPERUSER_EMAIL: $$cap_superuser_email
SUPERUSER_PASSWORD: $$cap_superuser_pass
ALLOWED_HOST: $$cap_appname.$$cap_root_domain
DB_NAME: $$cap_pg_name
DB_USER: $$cap_pg_user
DB_PASSWORD: $$cap_pg_pass
DB_HOST: srv-captain--$$cap_appname-db
DB_PORT: 5432
REDIS_HOST: srv-captain--$$cap_appname-redis
REDIS_PORT: 6379
REDIS_PASSWORD: $$cap_redis_password
REDIS_DB_TASK: 0
REDIS_DB_CACHE: 1
caproverExtra:
containerHttpPort: '8000'
caproverOneClickApp:
variables:
- id: $$cap_pg_version
label: Postgres Version Tag
defaultValue: 12.2
description: 'Check out the Docker page for valid tags https://hub.docker.com/r/library/postgres/tags/.'
validRegex: /^([^\s^\/])+$/
- id: $$cap_pg_user
label: Postgres Username
defaultValue: postgres
- id: $$cap_pg_pass
label: Postgres Password
defaultValue: $$cap_gen_random_hex(12)
description: 'Password must be at least 12 characters. Please use a random string.'
- id: $$cap_pg_name
label: Postgres Database
defaultValue: netbox-pgsql
- id: $$cap_redis_version
label: Redis Version Tag
description: 'Check out the Docker page for valid tags: https://hub.docker.com/_/redis?tab=tags.'
defaultValue: 5
validRegex: /^([^\s^\/])+$/
- id: $$cap_redis_password
label: Redis Password
validRegex: /^(\w|[^\s"])+$/
defaultValue: $$cap_gen_random_hex(12)
- id: $$cap_netbox_version
label: Netbox Version Tag
description: 'Check out the Docker page for valid tags: https://hub.docker.com/r/linuxserver/netbox/tags.'
defaultValue: 3.1.6
validRegex: /^([^\s^\/])+$/
- id: $$cap_time_zone
label: Time Zone
defaultValue: America/New_York
- id: $$cap_superuser_email
label: Email for user "admin"
description: 'Email address for the Netbox admin account.'
defaultValue: user@example.tld
- id: $$cap_superuser_pass
label: Admin Password
description: 'Password for user "admin".'
defaultValue: $$cap_gen_random_hex(12)
instructions:
start: IP address and datacenter infrastructure management.
---
Find out more at https://netbox.dev. This app's container image was built using https://docs.linuxserver.io/images/docker-netbox.
end: >-
Netbox is deployed, it might take few moments before it's fully started.
Login with user `admin` and password `$$cap_superuser_pass`.
Volumes created for `config`, `scripts`, and `reports` are available in your default folder for Caprover volumes, typically `/var/lib/docker/volumes`
displayName: Netbox
isOfficial: false
description: IP address management (IPAM) and data center infrastructure management (DCIM) tool
documentation: 'Read more at: https://docs.linuxserver.io/images/docker-netbox'

39
public/v4/apps/traggo.yml Normal file
View File

@ -0,0 +1,39 @@
captainVersion: 4
services:
$$cap_appname:
volumes:
- $$cap_appname-data:/opt/traggo/data
restart: always
environment:
TRAGGO_DEFAULT_USER_NAME: $$cap_traggo_user
TRAGGO_DEFAULT_USER_PASS: $$cap_traggo_pw
caproverExtra:
containerHttpPort: '3030'
dockerfileLines:
- FROM traggo/server:$$cap_traggo_version
caproverOneClickApp:
variables:
- id: $$cap_traggo_version
label: Traggo Version Tag
description: 'Check out their Docker page for the valid tags: https://hub.docker.com/r/traggo/server/tags'
defaultValue: '0.2.1'
validRegex: /^([^\s^\/])+$/
- id: $$cap_traggo_user
label: Default User's Username
validRegex: /^([a-zA-Z0-9])+$/
- id: $$cap_traggo_pw
label: Default User's Password
validRegex: /^(\w|[^\s"])+$/
instructions:
start: |
Traggo is a tag-based time tracking tool. In Traggo there are no tasks, only tagged time spans. This container is multiarch and supports `amd64`, `386`, `ppc641e`, `s390x`, `arm64`, and `armv7` (Rasberry Pi).
Enter your desired app name, username, and password and click on next. It will take about a minute for the process to finish.
end: |
Traggo has been deployed and can be accessed at **$$cap_appname.$$cap_root_domain**. Enabling https is recommended.
The `$$cap_appname-data` volume contains the sqlite database.
displayName: 'Traggo'
isOfficial: true
description: Traggo is a simple tag-based time tracking tool. In Traggo there are no tasks, only tagged time spans.
documentation: Taken from https://traggo.net/install/

BIN
public/v4/logos/netbox.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
public/v4/logos/traggo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB