ppcm/osticket-server

By ppcm

Updated 8 months ago

osTicket web server with the UI

Image
Content Management System

854

osTicket Docker Container

Supported tags

  • 1, 1.18, 1.18.1, 1.18.1-4, latest

Quick reference

What is osTicket

osTicket is a widely-used open source support ticket system. It seamlessly integrates inquiries created via email, phone and web-based forms into a simple easy-to-use multi-user web interface. Manage, organize and archive all your support requests and responses in one place while providing your customers with accountability and responsiveness they deserve.

osTicket Logo

About Docker osTicket

This package contains with:

Description of each image

  • ppcm/osticket-server : osTicket web server with the UI
  • ppcm/osticket-cron : osTicket cron job daemon is running with scheduling managed

How to use this images

Start osTicket with docker

Starting a osTicket instance is simple

$ docker network create some-network 
$ docker run -d --name some-mariadb -p 3306:3306 --network some-network -e MARIADB_USER=osticket-user -e MARIADB_PASSWORD=osticket-password -e MARIADB_RANDOM_ROOT_PASSWORD=1 -e MARIADB_DATABASE=osticket -v mysql-dir:/var/lib/mysql mariadb:latest
$ docker run -d --name some-osticket-server -p 8089:80 --network some-network -e MYSQL_HOST=some-mariadb -e MYSQL_PORT=3306 -e MYSQL_USER=osticket-user -e MYSQL_PASSWORD=osticket-password -e MYSQL_DATABASE=osticket -e INSTALL_LANG_ID=fr -e TZ="Europe/Paris" -v config:/config -v data:/data ppcm/osticket-server:latest
$ docker run -d --name some-osticket-cron --network some-network -e CRON_SCHEDULE="*/2 * * * *" -e TZ="Europe/Paris" -v config:/config -v data:/data ppcm/osticket-cron:latest
Login to osTicket

By default, the following users are created

functionloginpassword
Administratorostadminostadmin

You are invited to change as soon as possible password of this account or to remove them.

Docker informations

Exposed ports

Portmariadbppcm/osticket-serverUsage
80/tcpXHTTP web application

For SSL, there are many different possibilities to introduce encryption depending on your setup.

As most of available docker image on the internet, it is recommend using a reverse proxy in front of this image. This prevent to introduce all ssl configurations parameters and also to prevent a limitation of the available parameters.

For example, you can use the popular nginx-proxy and docker-letsencrypt-nginx-proxy-companion containers or Traefik to handle this.

Environments variables

For plugins variables, any content, except 0, will install, update and activate the plugin.

Environmentmariadbppcm/osticketppcm/osticket-cronDefaultUsage
MYSQL_HOSTXMANDATORY - MySQL or MariaDB host name
MYSQL_PORTX3306MySQL or MariaDB host port
MYSQL_USERXXosticketMySQL or MariaDB osTicket username
MYSQL_PASSWORDXXosticketMySQL or MariaDB password for osTicket user
MYSQL_DATABASEXXosticketMySQL or MariaDB database name for osTicket
MYSQL_PREFIXXost_MySQL Table Prefix
TZXXUTCTimezone for the web server and for osTicket
INSTALL_NAMEXMy HelpdeskHelpdesk Name
INSTALL_EMAILXhelpdesk@example.comDefault Email
INSTALL_URLXhttp://localhost:8080/Helpdesk URL
INSTALL_LANG_IDXen_USPrimary Language
INSTALL_SECRETXSecret string value for osTicket installation (see below)
CRON_SCHEDULEX*/2 * * * *Schedule in CRON format - cron.guru can help you
SMTP_HOSTNAMEXlocalhostThe host name (or IP address) of the SMTP server to send all outgoing mail through
SMTP_PORTX25The TCP port to connect to on the server. Usually one of 25, 465 or 587.
SMTP_FROMXThe envelope from address to use when sending email (note that is not the same as the From: header). This must be provided for sending mail to function. However, if not specified, this will default to the value of SMTP_USER if this is provided.
SMTP_TLSX1Boolean (1 or 0) value indicating if TLS should be used to create a secure connection to the server
SMTP_TLS_CERTSX/etc/ssl/certs/ca-certificates.crtIf TLS is in use, indicates file containing root certificates used to verify server certificate
SMTP_USERXThe user identity to use for SMTP authentication. Specifying a value here will enable SMTP authentication
SMTP_PASSWORDXThe password associated with the user for SMTP authentication

Exposed volumes

Volumes must be exposed for ppcm/osticket-server and ppcm/osticket-cron

VolumeUsage
/configVolume for configuration files of osTicket
/dataVolume for any data of osTicket

osTicket Cronjob

osTicket require a job to be run periodically. To respect docker convention and to prevent a clustered deploiement to run the cron on all cluster instances, the cron task was removed from osTicket main image.

As compensation a dedicated image ppcm/osticket-cron was made for the cron task. Only one instance of this image has to run on your cluster.

Mail Configuration

The image does not run a MTA. Although one could be installed quite easily, getting the setup so that external mail servers will accept mail from your host & domain is not trivial due to anti-spam measures. This is additionally difficult to do from ephemeral docker containers that run in a cloud where the host may change etc.

Hence this image supports osTicket sending of mail by sending directly to designated a SMTP server. However, you must provide the relevant SMTP settings through environmental variables before this will function.

To automatically collect email from an external IMAP or POP3 account, configure the settings for the relevant email address in your admin control panel as normal (Admin Panel -> Emails).

Environmental Variables

INSTALL_SECRET

Secret string value for osTicket installation. A random value is generated on start-up and persisted in /data/secret.txt if this is not provided.

If using in production you should specify this so that re-creating the container does not cause your installation secret to be lost!

Docker Pull Command

docker pull ppcm/osticket-server