Skip to content

Commit f335800

Browse files
authored
FreeScout template (#149)
* Add FreeScout template * Final commit. Tested and working. - opted to use internal db rather than external - http instead of https for traefik-generated domain
1 parent 7c91a41 commit f335800

File tree

4 files changed

+124
-29
lines changed

4 files changed

+124
-29
lines changed
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
services:
2+
freescout-db:
3+
image: mariadb:10.6
4+
volumes:
5+
- freescout-db-data:/var/lib/mysql
6+
environment:
7+
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
8+
MYSQL_DATABASE: ${DB_NAME}
9+
MYSQL_USER: ${DB_USER}
10+
MYSQL_PASSWORD: ${DB_PASS}
11+
healthcheck:
12+
test:
13+
[
14+
"CMD",
15+
"mysqladmin",
16+
"ping",
17+
"-h",
18+
"localhost",
19+
"-u",
20+
"root",
21+
"-p${MYSQL_ROOT_PASSWORD}",
22+
]
23+
interval: 10s
24+
timeout: 5s
25+
retries: 5
26+
restart: unless-stopped
27+
28+
freescout:
29+
image: tiredofit/freescout:latest
30+
volumes:
31+
- freescout-data:/data
32+
- freescout-html:/www/html
33+
- freescout-logs:/www/logs
34+
depends_on:
35+
freescout-db:
36+
condition: service_healthy
37+
environment:
38+
- ADMIN_EMAIL=${ADMIN_EMAIL}
39+
- ADMIN_PASS=${ADMIN_PASS}
40+
- ADMIN_FIRST_NAME=${ADMIN_FIRST_NAME}
41+
- ADMIN_LAST_NAME=${ADMIN_LAST_NAME}
42+
- SITE_URL=${SITE_URL}
43+
- DB_HOST=freescout-db
44+
- DB_PORT=3306
45+
- DB_TYPE=mysql
46+
- DB_NAME=${DB_NAME}
47+
- DB_USER=${DB_USER}
48+
- DB_PASS=${DB_PASS}
49+
- APPLICATION_NAME=${APPLICATION_NAME}
50+
- SETUP_TYPE=AUTO
51+
- ENABLE_AUTO_UPDATE=TRUE
52+
- DISPLAY_ERRORS=FALSE
53+
- APP_PROXY=${APP_PROXY}
54+
- APP_TRUSTED_PROXIES=${APP_TRUSTED_PROXIES}
55+
restart: unless-stopped
56+
57+
volumes:
58+
freescout-db-data:
59+
freescout-data:
60+
freescout-html:
61+
freescout-logs:

blueprints/freescout/freescout.svg

Lines changed: 13 additions & 0 deletions
Loading

blueprints/freescout/template.toml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
[variables]
2+
main_domain = "${domain}"
3+
mysql_root_password = "${password:16}"
4+
admin_email = "${email}"
5+
admin_password = "${password:16}"
6+
db_name = "freescout"
7+
db_user = "freescout_user"
8+
db_pass = "${password:16}"
9+
10+
[config]
11+
mounts = []
12+
13+
[[config.domains]]
14+
serviceName = "freescout"
15+
port = 80
16+
host = "${main_domain}"
17+
18+
[config.env]
19+
MYSQL_ROOT_PASSWORD = "${mysql_root_password}"
20+
DB_NAME = "${db_name}"
21+
DB_USER = "${db_user}"
22+
DB_PASS = "${db_pass}"
23+
ADMIN_EMAIL = "${admin_email}"
24+
ADMIN_PASS = "${admin_password}"
25+
ADMIN_FIRST_NAME = "Admin"
26+
ADMIN_LAST_NAME = "User"
27+
SITE_URL = "http://${main_domain}"
28+
APPLICATION_NAME = "Customer Support"
29+
APP_PROXY = ""
30+
APP_TRUSTED_PROXIES = "172.16.0.0/12,192.168.0.0/16,10.0.0.0/8"

meta.json

Lines changed: 20 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,19 @@
1212
"logo": "autobase.svg",
1313
"tags": ["database", "postgres", "self-hosted", "server"]
1414
},
15+
{
16+
"id": "freescout",
17+
"name": "FreeScout",
18+
"version": "latest",
19+
"description": "FreeScout is a free open source help desk and shared inbox system. It's a self-hosted alternative to HelpScout, Zendesk, and similar services that allows you to manage customer communications through email and a clean web interface. FreeScout makes it easy to organize support requests, track customer conversations, and collaborate with your team.",
20+
"links": {
21+
"github": "https://github.com/freescout-helpdesk/freescout",
22+
"website": "https://freescout.net/",
23+
"docs": "https://github.com/freescout-helpdesk/freescout/wiki/Installation-Guide"
24+
},
25+
"logo": "freescout.svg",
26+
"tags": ["helpdesk", "support", "email", "customer-service", "self-hosted"]
27+
},
1528
{
1629
"id": "openresty-manager",
1730
"name": "OpenResty Manager",
@@ -686,11 +699,7 @@
686699
"website": "https://pterodactyl.io",
687700
"docs": "https://pterodactyl.io/project/introduction.html"
688701
},
689-
"tags": [
690-
"self-hosted",
691-
"open-source",
692-
"management"
693-
]
702+
"tags": ["self-hosted", "open-source", "management"]
694703
},
695704
{
696705
"id": "pyrodactyl",
@@ -703,11 +712,7 @@
703712
"website": "https://pyrodactyl.dev",
704713
"docs": "https://pyrodactyl.dev/docs"
705714
},
706-
"tags": [
707-
"self-hosted",
708-
"open-source",
709-
"management"
710-
]
715+
"tags": ["self-hosted", "open-source", "management"]
711716
},
712717
{
713718
"id": "influxdb",
@@ -2252,13 +2257,7 @@
22522257
"website": "https://homebridge.io/",
22532258
"docs": "https://github.com/homebridge/homebridge/wiki"
22542259
},
2255-
"tags": [
2256-
"iot",
2257-
"homekit",
2258-
"internet-of-things",
2259-
"self-hosted",
2260-
"server"
2261-
]
2260+
"tags": ["iot", "homekit", "internet-of-things", "self-hosted", "server"]
22622261
},
22632262
{
22642263
"id": "homeassistant",
@@ -2342,11 +2341,7 @@
23422341
"website": "https://qdrant.tech/",
23432342
"docs": "https://qdrant.tech/documentation/"
23442343
},
2345-
"tags": [
2346-
"vector-db",
2347-
"database",
2348-
"search"
2349-
]
2344+
"tags": ["vector-db", "database", "search"]
23502345
},
23512346
{
23522347
"id": "trmnl-byos-laravel",
@@ -2359,12 +2354,9 @@
23592354
"website": "https://docs.usetrmnl.com/go/diy/byos",
23602355
"docs": "https://github.com/usetrmnl/byos_laravel/blob/main/README.md"
23612356
},
2362-
"tags": [
2363-
"e-ink"
2364-
]
2365-
},
2357+
"tags": ["e-ink"]
2358+
},
23662359
{
2367-
23682360
"id": "chibisafe",
23692361
"name": "Chibisafe",
23702362
"version": "latest",
@@ -2378,7 +2370,6 @@
23782370
"tags": ["media system", "storage", "file-sharing"]
23792371
},
23802372
{
2381-
23822373
"id": "rybbit",
23832374
"name": "Rybbit",
23842375
"version": "latest",
@@ -2390,5 +2381,5 @@
23902381
"docs": "https://www.rybbit.io/docs"
23912382
},
23922383
"tags": ["analytics"]
2393-
}
2384+
}
23942385
]

0 commit comments

Comments
 (0)