mirror of
https://github.com/Dokploy/templates.git
synced 2026-03-11 17:48:11 -05:00
feat(blueprint): strapi template (#616)
* feat(blueprint): strapi template * feat: strapi meta.json * fix: strapi extra colon * fix: docker syntax for expose and depends_on * fix: change image base * fix: strapi healthcheck * fix: add jwt secret and admin jwt secret to strapi * fix: strapi healthcheck start interval * fix(template): strapi v5.33.0 * Update docker-compose.yml --------- Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Co-authored-by: Mauricio Siu <siumauricio@icloud.com>
This commit is contained in:
58
blueprints/strapi/docker-compose.yml
Normal file
58
blueprints/strapi/docker-compose.yml
Normal file
@@ -0,0 +1,58 @@
|
||||
# Self-host guide:
|
||||
# - https://strapi.io/blog/how-to-self-host-your-headless-cms-using-docker-compose
|
||||
|
||||
services:
|
||||
strapi:
|
||||
image: elestio/strapi-production:v5.33.0
|
||||
environment:
|
||||
# https://docs.strapi.io/cms/configurations/environment
|
||||
NODE_ENV: production
|
||||
STRAPI_TELEMETRY_DISABLED: true
|
||||
STRAPI_PLUGIN_I18N_INIT_LOCALE_CODE: en
|
||||
FAST_REFRESH: true
|
||||
JWT_SECRET: ${JWT_SECRET}
|
||||
ADMIN_JWT_SECRET: ${ADMIN_JWT_SECRET}
|
||||
DATABASE_CLIENT: postgres
|
||||
DATABASE_HOST: strapi_postgres
|
||||
DATABASE_PORT: 5432
|
||||
DATABASE_NAME: strapi
|
||||
DATABASE_USERNAME: strapi
|
||||
DATABASE_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- strapi_data:/srv/app
|
||||
expose:
|
||||
- 1337
|
||||
depends_on:
|
||||
- strapi_postgres
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- wget
|
||||
- "-q"
|
||||
- "--spider"
|
||||
- "http://127.0.0.1:1337"
|
||||
start_period: 3s
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
|
||||
strapi_postgres:
|
||||
image: postgres:18
|
||||
environment:
|
||||
POSTGRES_DB: strapi
|
||||
POSTGRES_USER: strapi
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- strapi_postgres_data:/var/lib/postgresql
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"
|
||||
start_period: 3s
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
|
||||
volumes:
|
||||
strapi_data:
|
||||
strapi_postgres_data:
|
||||
23
blueprints/strapi/strapi.svg
Normal file
23
blueprints/strapi/strapi.svg
Normal file
@@ -0,0 +1,23 @@
|
||||
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M0 22.1867C0 11.7278 0 6.49832 3.24916 3.24916C6.49832 0 11.7278 0 22.1867 0H41.8133C52.2722 0 57.5017 0 60.7508 3.24916C64 6.49832 64 11.7278 64 22.1867V41.8133C64 52.2722 64 57.5017 60.7508 60.7508C57.5017 64 52.2722 64 41.8133 64H22.1867C11.7278 64 6.49832 64 3.24916 60.7508C0 57.5017 0 52.2722 0 41.8133V22.1867Z"
|
||||
fill="#4945FF"
|
||||
/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd"
|
||||
d="M44.156 19.4131H22.6094V30.4004H33.596V41.3864H44.5827V19.8398C44.5827 19.6041 44.3917 19.4131 44.156 19.4131Z"
|
||||
fill="white"
|
||||
/>
|
||||
<rect x="33.1719" y="30.4004" width="0.426667" height="0.426667" fill="white" />
|
||||
<path
|
||||
d="M22.6172 30.4004H33.1772C33.4128 30.4004 33.6039 30.5914 33.6039 30.8271V41.3871H23.0439C22.8082 41.3871 22.6172 41.196 22.6172 40.9604V30.4004Z"
|
||||
fill="#9593FF"
|
||||
/>
|
||||
<path
|
||||
d="M33.6016 41.3867H44.5882L33.9657 52.0092C33.8314 52.1436 33.6016 52.0484 33.6016 51.8584V41.3867Z"
|
||||
fill="#9593FF"
|
||||
/>
|
||||
<path
|
||||
d="M22.6151 30.3998H12.1434C11.9534 30.3998 11.8582 30.17 11.9926 30.0356L22.6151 19.4131V30.3998Z"
|
||||
fill="#9593FF"
|
||||
/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
15
blueprints/strapi/template.toml
Normal file
15
blueprints/strapi/template.toml
Normal file
@@ -0,0 +1,15 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
postgres_password = "${password:32}"
|
||||
jwt_secret = "${password:32}"
|
||||
admin_jwt_secret = "${password:32}"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "strapi"
|
||||
port = 1337
|
||||
host = "${main_domain}"
|
||||
|
||||
[config.env]
|
||||
POSTGRES_PASSWORD = "${postgres_password}"
|
||||
JWT_SECRET = "${jwt_secret}"
|
||||
ADMIN_JWT_SECRET = "${admin_jwt_secret}"
|
||||
18
meta.json
18
meta.json
@@ -5803,6 +5803,24 @@
|
||||
"media"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "strapi",
|
||||
"name": "Strapi",
|
||||
"version": "v5.33.0",
|
||||
"description": "Open-source headless CMS to build powerful APIs with built-in content management.",
|
||||
"logo": "strapi.svg",
|
||||
"links": {
|
||||
"github": "https://github.com/strapi/strapi",
|
||||
"discord": "https://discord.com/invite/strapi",
|
||||
"docs": "https://docs.strapi.io",
|
||||
"website": "https://strapi.io"
|
||||
},
|
||||
"tags": [
|
||||
"headless",
|
||||
"cms",
|
||||
"content-management"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "supabase",
|
||||
"name": "SupaBase",
|
||||
|
||||
Reference in New Issue
Block a user