Skip to main content

About the Deskpro container image

in Deskpro container image
Authors list
Published: Jul 31, 2023|Last updated: Apr 30, 2024
Note

We recommend most users use our fully automated OPC (On-premise Controller) product that handles setup and configuration of the entire stack. The OPC automatically manages running containers, upgrading, backups, etc so you don't need to think about any of this at all. Running Deskpro "manually" like described in these pages is typically only useful for customers who have their own infrastructure requirements that aren't met by the OPC.

Docker Image TagsCopy link to Docker Image Tags to clipboard

Deskpro images are hosted on docker hub in the deskpro/deskpro-product repository.

This repository contains different builds depending on use-case. If you're reading this guide and want to run Deskpro via docker, then you need to use images tagged with the -onprem-X.X.X suffix.

Warning

When running Deskpro via Docker, always use the images tagged with the -onprem-X.X.X suffix. These images are purpose built for running Deskpro on your own infrastructure (i.e. instead of via the OPC).

You'll see images taged like 2024.17.3-onprem-1.0.5. Here's what each segment meanings:

  • 2024.17.3- - This is the Deskpro product version. We release new versions every Tuesday.

  • onprem- - This means the image is intended to be used without the OPC (i.e. you have your own infra that can run containers). You should only used images tagged like this.

  • 1.0.5 - This is the container version. More details on this below.

Container Version

The last part of the image tag (e.g. the 1.0.5 in 2024.17.3-onprem-1.0.5) refers to the semver version of the underlying container format. The container we build operates in a specific, documented way. We have many options and env vars, the container behaves in certain specific ways. When we change the underlying base container, we increment this version number.

For you running the container on your servers, you should be aware of this version number because when it changes, it might mean you need to change other parts of your infra. We try to maintain stable behaviour and avoid breaking changes whenever possible, but it still happens from time to time.

For example, if you ran a XXXX.X.X-onprem-1.0.5 image and we release a new XXXX.X.X-onprem-2.0.0 image, this version bump indicates that a breaking change was introduced (as per semver rules). You should review the changelog to discover if the change affects your particular usage.

The base container is open source on Github and you can review the release change logs here: https://github.com/deskpro/docker-product-base/releases

Docker Compose ExampleCopy link to Docker Compose Example to clipboard

The easiest way to get started is with our docker-compose example project detailed here: Example: Running Deskpro with Docker Compose

The example project runs the whole stack, including third-party services like MySQL and Elastic, and is a good way to get started quickly.

Image naming in this guideCopy link to Image naming in this guide to clipboard

In the rest of this guide, when we refer to the Docker image in code samples, we will use a format like: deskpro/deskpro-product:$DPVERSION-onprem

In your own implementation, you need to replace the variable with the actual version of Deskpro that exists in the image repository at deskpro/deskpro-product. For example, if you are running Deskpro v2023.33.1, then you would use the image deskpro/deskpro-product:2023.33.1-onprem

Not all versions of Deskpro are schema compatible with eachother, so it's important to always be aware of the version of Deskpro you are running. When you want to upgrade to a newer version, there are specific procedures you need to perform (see Updating Deskpro). New versions of Deskpro are released every Tuesday. You can learn about new releases as they become available on our releases page.

External requirementsCopy link to External requirements to clipboard

MySQLCopy link to MySQL to clipboard

Deskpro requires MySQL 5.7.x or MySQL 8.0.x.

Note

We recommend MySQL 8.0.x. This is likely to become a requirement in the near future.

Elastic Search / OpenSearchCopy link to Elastic Search / OpenSearch to clipboard

Deskpro requires Elastic >= 7.10 and <= 8.8, or OpenSearch 1.8.x].

Reverse HTTP ProxyCopy link to Reverse HTTP Proxy to clipboard

We recommend running Deskpro behind a reverse proxy that can perform tasks such as SSL termination. This isn't required, but recommended.

Running the Deskpro containerCopy link to Running the Deskpro container to clipboard

To run Deskpro, you need a way to run one or more docker containers. This can be very simple such as a server with docker installed, or it can be more complicated, like using Kubernetes or Amazon ECS.

Fundamentally it comes down to:

  1. Defining your configuration as environmental variables (see Configuration with Environmental Variables)

  2. Running the container with those variables with a particular run mode (see Run Modes)

As a very basic example, here's how you could run Deskpro on an arbitrary server with docker installed on it:

# Create a config.env file based on the template from # https://support.deskpro.com/guides/topic/1842-configuration-with-environmental-variables vim config.env # Run one Deskpro container in 'web' mode to accept HTTP requests docker run -d --name my_deskpro --env-file "config.env" -p 80:80 deskpro/deskpro-product:2023.33.0-onprem web # Run another Deskpro container in 'tasks' mode to handle background tasks docker run -d --name my_deskpro_tasks --env-file "config.env" -p 80:80 deskpro/deskpro-product:2023.33.0-onprem tasks # If this is your first time running Deskpro, you need to initialise the database by running the installer # You can do this through the already-running tasks container: docker exec my_deskpro_tasks bin/install --url 'http://127.0.0.1/' --adminEmail 'your@email.com' --adminPassword 'some_temp_password'
copy

A more realistic example can be found with our docker-compose example. See Example: Running Deskpro with Docker Compose.

HelpfulUnhelpful

3 of 4 people found this page helpful

next pageRun Modes

Please log in or register to submit a comment.