Skip to main content

Self-Hosting

We provide a fully managed cloud instance of the Touca server at https://app.touca.io. Since Touca is open-source, you have the option to install it locally or deploy it to your own cloud infrastructure. We've made the process straightforward and self-serve. Join us on Discord or send us an email if you need help or have any questions.

info

Most of our paid plans include dedicated support and professional services for deploying and upgrading self-hosted instances of Touca.

We support two different self-hosted deployments of Touca:

  1. You can host Touca as a set of Docker containers on a single machine. This setup uses Docker Compose and is most suitable for individuals and small engineering teams.
  2. You can deploy Touca to your Kubernetes cluster using our Helm chart. This setup is suitable for engineering teams who are used to hosting third-party tools on Kubernetes.

Both deployments use MinIO, MongoDB, and Redis as service dependencies. If you plan on using Touca at scale, we encourage you to upgrade to our paid deployment setups that use DocumentDB, ElastiCache and S3 instead.

Using Docker Compose

Installing

You can install Touca server locally using either the Touca CLI (recommended) or our install.sh script, or using docker compose directly.

The recommended way to manage Touca server is through our CLI.

pip install touca

The touca server subcommand helps you install, upgrade, and uninstall the Touca server, as well as to check its status and logs.

touca server install

This command uses docker compose to install the server into ~/.touca/server and run it. Once the install is over, navigate to Touca server and complete the install wizard.

Uninstalling

To uninstall the server, you can use the following command to stop the running containers and remove all server data from the filesystem.

touca server uninstall

If you have any locally stored test results, you can manually remove them by running rm -r $HOME/.touca/results.

Using Helm

Installing

You can use our Helm chart to deploy Touca to an existing Kubernetes cluster.

git clone git@github.com:trytouca/trytouca.git
cd ops/k8s/helm-chart
helm install <name> .

Uninstalling

You can uninstall Touca the standard way:

helm uninstall <name>
info

Did we miss out a required step? We'd love to hear about your experience. Share your thoughts with support@touca.io.

Post Install Setup

Once the server is running, navigate to the Touca web interface to complete a one-time post-install setup that helps you create a primary user account.

The user account your create during this process has special privileges that let you manage server settings from the settings page and gives you exclusive rights to promote other user accounts to server administrators so they can manage server settings too.

By default, self-hosted instances of Touca collect aggregate usage data and report them to us once every day. See Telemetry Reports to learn more about how this service works, what data we collect, and how you can disable it through the server settings page.

Once the post-install setup is complete, you can login to your self-hosted instance using the primary account you created as part of the setup. While the server setup process is officially complete, we strongly recommend that you configure a mail server for your instance to enable sending email notifications. This optional step is essential for inviting other colleagues to create an account and join your team.