one-click-apps/public/v4/apps/squidex.yml

109 lines
5.1 KiB
YAML

captainVersion: 4
services:
$$cap_appname:
depends_on:
- $$cap_appname-db
image: 'squidex/squidex:$$cap_squidex_version'
volumes:
- '$$cap_appname-data:/app/Assets'
restart: always
environment:
URLS__BASEURL: 'https://$$cap_appname.$$cap_root_domain'
URLS__ENFORCEHTTPS: 'True'
EVENTSTORE__MONGODB__CONFIGURATION: 'mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-db'
STORE__MONGODB__CONFIGURATION: 'mongodb://root:$$cap_mongo_password@srv-captain--$$cap_appname-db'
IDENTITY__ADMINEMAIL: $$cap_admin_email
IDENTITY__ADMINPASSWORD: $$cap_admin_password
IDENTITY__GOOGLECLIENT: $$cap_google_client
IDENTITY__GOOGLESECRET: $$cap_google_secret
IDENTITY__GITHUBCLIENT: $$cap_github_client
IDENTITY__GITHUBSECRET: $$cap_github_secret
IDENTITY__MICROSOFTCLIENT: $$cap_microsoft_client
IDENTITY__MICROSOFTSECRET: $$cap_microsoft_secret
LETSENCRYPT_HOST: $$cap_appname.$$cap_root_domain
LETSENCRYPT_EMAIL: $$cap_admin_email
VIRTUAL_HOST: $$cap_appname.$$cap_root_domain
$$cap_appname-db:
image: 'mongo:$$cap_mongo_version'
volumes:
- '$$cap_appname-db-data:/data/db'
- '$$cap_appname-db-config:/data/configdb'
restart: always
environment:
MONGO_INITDB_DATABASE: squidex
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: $$cap_mongo_password
caproverExtra:
notExposeAsWebApp: 'true'
caproverOneClickApp:
variables:
- id: $$cap_squidex_version
label: Squidex Version
defaultValue: 4.6.0
description: >-
Check out their page for the valid versions
https://hub.docker.com/r/squidex/squidex/tags
validRegex: '/^([^\s^\/])+$/'
- id: $$cap_mongo_version
label: MongoDB Version
defaultValue: '4'
description: >-
Check out their Docker page for the valid tags
https://hub.docker.com/r/library/mongo/tags/
validRegex: '/^([a-zA-Z0-9])+$/'
- id: $$cap_mongo_password
label: MongoDB password
description: Only use alphanumeric chars.
validRegex: '/^([a-zA-Z0-9])+$/'
- id: $$cap_admin_email
label: Admin Email
description: The Email which is gonna be used to login as administrator.
validRegex: >-
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/
- id: $$cap_admin_password
label: Admin Password
description: >-
The password which is gonna be used to login as administrator.(Minimum
eight characters, at least one letter, one number and one special
character:)
validRegex: '/^(?=.*[A-Za-z])(?=.*\d)(?=.*[@$!%*#?&])[A-Za-z\d@$!%*#?&]{8,}$/'
- id: $$cap_microsoft_client
label: Microsoft Client Id(Optional)
description: The client id from Microsoft in order to enable MS Login.
- id: $$cap_microsoft_secret
label: Microsoft Secret Token(Optional)
description: The secret token from Microsoft in order to enable MS Login.
- id: $$cap_github_client
label: Github Client Id(Optional)
description: The client id from Github in order to enable Github Login.
- id: $$cap_github_secret
label: Github Secret Token(Optional)
description: The secret token from Github in order to enable Github Login.
- id: $$cap_google_client
label: Google Client Id(Optional)
description: The client id from Google in order to enable Google Login.
- id: $$cap_google_secret
label: Google Secret Token(Optional)
description: The secret token from Google in order to enable Google Login.
instructions:
start: >-
Squidex is an open source headless CMS and content management hub. In
contrast to a traditional CMS Squidex provides a rich API with OData
filter and Swagger definitions. It is up to you to build your UI on top of
it. It can be website, a native app or just another server. It is built
with ASP.NET Core and CQRS and is tested for Windows and Linux on modern
browsers.
end: |-
Squidex is deployed and available as $$cap_appname
You'll need also to enable https in order to make this app work.
IMPORTANT!! Don't forget to change the URLS__BASEURL,LETSENCRYPT_HOST and VIRTUAL_HOST variable if you change your URL.
IMPORTANT!! It takes up to 2-5 minutes for Squidex to boot up. You will see a 502 Error until the startup is finished.
displayName: ''
isOfficial: true
description: Squidex is an open source headless CMS and content management hub.
documentation: >-
Taken from
https://github.com/Squidex/squidex-docker/blob/master/standalone/docker-compose.yml