Squidex
  • Welcome to Squidex
  • Getting Started
    • Squidex Cloud
    • Installation Instructions
      • Platforms
        • Install on Kubernetes
        • Install on AWS (Deprecated)
        • Install on AWS EC2 using Docker
        • Install on Azure
        • Install on Azure using ARM
        • Install on Google Cloud Platform (GCP)
        • Install on Docker
        • Install on Heroku
        • Install on IIS
        • Install on Render
        • Install on Vultr
      • Configuration
        • Deploying the Image Resizer Service
      • Troubleshooting and Support
        • Diagnose Runtime Issues
        • Restoring Deleted Apps
      • Install Identity (Deprecated)
      • External Identity Providers
        • Azure AD (OAuth) with Squidex
    • Contributing and Developing
      • Building
      • Developing
      • Extensions
        • Custom Rule Action
      • Contributing
      • Architecture
      • Translating
      • Squidex Docs Program
    • Roadmap
    • Quick Start Guides
      • Vue.js Blog with Squidex
      • React.js Blog with Squidex
      • Angular Blog with Squidex
  • Documentation
    • Introduction and Use Case
    • Concepts
      • Apps
      • Teams
      • Schemas
        • Field Rules
      • Content
        • Scheduled Publishing
      • Assets
        • Querying Assets
      • Localization
      • Migrations
      • Roles & Permissions
      • Rules
        • Publish an Event to Azure Queues using Rules
        • Populate Elasticsearch Index
      • Backups
      • Subscriptions
        • App Subscriptions v/s Team Subscriptions
      • Notifications
      • Dashboard
      • Workflows
    • Software Development Kits
      • TypeScript
      • .NET
        • Version v14 (and Earlier)
        • Version v15 (and Later)
      • PHP
      • Java
    • Developer Guides
      • API
        • Authentication
        • Postman
        • Queries
        • Assets
      • Automation Tools (CLI)
      • Scripting
        • Scripting Helper Methods
      • Embed Content
      • Custom Workflows
      • Custom Editors
      • Custom Sidebars
      • Preview Content
      • Rule Formatting
        • Simple
        • Script
        • Liquid
      • Tutorials
        • Building a Blog with Squidex and Next.js
  • Next
    • Squidex 3.0: API Compatibility
Powered by GitBook
On this page
  • Supported Platforms
  • Prerequisites
  • Use the Helm Chart
  • 1. Connect to the Kubernetes Cluster
  • 2. Add the Repository
  • 3. Install the Chart
  • 4. Wait for the rollout
  • 5. Verify resources/objects
  • 6. Access Squidex
  • Troubleshooting
  • 404 Error on Accessing URL
  • Before v7.0.0: Warning for ServerGC
  • More Issues?

Was this helpful?

  1. Getting Started
  2. Installation Instructions
  3. Platforms

Install on Kubernetes

Install Squidex on a Kubernetes cluster

PreviousPlatformsNextInstall on AWS (Deprecated)

Last updated 1 year ago

Was this helpful?

Supported Platforms

  • Kubernetes 1.23+

Prerequisites

  • Kubernetes cluster

  • An such as deployed in the cluster

  • for auto SSL of custom domain

  • A custom domain for use during Squidex deployment

Use the Helm Chart

We provide a Helm chart that deploys Squidex along with MongoDB.

The helm chart creates the following resources / objects:

  • Deployments

    • A Squidex primary deployment

    • And a Squidex worker deployment for background jobs

  • Statefulsets

    • A MongoDB statefulset with 3 replicas

  • PVs & PVCs

    • Persistent volumes for MongoDB

  • Services

  • Ingress

The Github link below contains all the details:

1. Connect to the Kubernetes Cluster

Use kubeconfig to connect to your Kubernetes cluster and ensure you are able to run kubectl commands.

2. Add the Repository

Here squidex is the name used for the repository.

helm repo add squidex https://squidex.github.io/squidex/helm/

3. Install the Chart

The below command installs version 7 of Squidex.

helm install squidex squidex/squidex7 --set env.URLS__BASEURL=https://squidex.your.domain --set ingress.hostName=squidex.your.domain
  • Here squidex/squidex7 means we are installing version 7 of Squidex.

  • Replace squidex.your.domain with your custom domain name.

4. Wait for the rollout

It may take a few minutes before the rollout is successful. Run the below command to check the status:

kubectl rollout status deployments

Below is a sample screenshot of a successful rollout

5. Verify resources/objects

You can verify / see all the objects created by running:

kubectl get all

6. Access Squidex

Open the custom URL address on a browser to continue with Squidex setup.

Troubleshooting

To troubleshoot, check deployment logs of the respective deployment. You can also check the pod logs or use the tools that are provided by your hosting providers to view the log stream.

kubectl logs deployment/squidex-squidex7

404 Error on Accessing URL

If you receive a 404 Error, It's mostly an ingress issue. Check the ingress class name for your ingress controller deployment.

This helm chart uses the ingressClassName as nginx.

Before v7.0.0: Warning for ServerGC

Don't worry if you see the following log entry:

info: Orleans.Runtime.Silo[100404] Silo starting with GC settings: ServerGC=False GCLatencyMode=Interactive warn: Orleans.Runtime.Silo[100405] Note: Silo not running with ServerGC turned on - recommend checking app config : -- warn: Orleans.Runtime.Silo[100405] Note: ServerGC only kicks in on multi-core systems (settings enabling ServerGC have no effect on single-core machines).

This is not a critical warning. ServerGC is a special Garbage Collector as it has no positive or negative impact when running with a single core. You can just ignore it. This log entry is generated by Microsoft Orleans, a framework which has been removed with v7.0.0 and is there not relevant anymore.

Solution: Request more than 1 CPU

resources:
  requests:
    cpu: 2

More Issues?

For other issues, it is likely that you have a configuration problem not related to hosting under Kubernetes. Checkout the following documentation:

Ingress Controller
NGINX
cert-manager
https://github.com/Squidex/squidex/tree/master/helm
Configuration
Successful rollout of Squidex deployments
Screenshot of all objects deployment by the helm chart