# Run Zammad - Opensource Helpdesk Ticketing System - In Docker
Author: i12bretro
Keywords: Browser Based,Docker Made Easy,Home Lab,Home Lab Ideas,Install Guide,Self-Hosted,Web Based,Web Based Tools,Debian,Enterprise Helpdesk,Free Helpdesk,Help Desk,Helpdesk,IT Ticketing System,Linux,Open Source Helpdesk,Support,Ticket,Ticketing System,Zammad,Docker,Docker Container,Docker How To,Docker Made Simple,Docker Simplified,Docker Tutorial,How To,Tutorial,i12bretro

## What is Zammad?

> Zammad is a web based open source helpdesk/customer support system with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and emails. -https://github.com/zammad/zammad

## Installing Docker

1. Log into the Linux based device
2. Run the following commands in the terminal
   # install prerequisites
   sudo apt install apt-transport-https ca-certificates git curl software-properties-common gnupg-agent -y
   # add docker gpg key
   curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
   # add docker software repository
   sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
   # install docker
   sudo apt install docker-ce docker-compose containerd.io -y
   # enable and start docker service
   sudo systemctl enable docker && sudo systemctl start docker
   # add the current user to the docker group
   sudo usermod -aG docker $USER
   # reauthenticate for the new group membership to take effect
   su - $USER

## Running Zammad

1. Continue with the following commands in a terminal window
   # create working directory
   mkdir ~/docker/zammad -p
   # clone source code from github
   git clone https://github.com/zammad/zammad-docker-compose.git ~/docker/zammad
   # change directory
   cd ~/docker/zammad
   # create .env
   cp .env.dist .env
   # edit .env
   nano .env
2. Uncomment the following lines be removing the # and edit the values in the .env file

   POSTGRES_PASS=Zamm4d!
   POSTGRES_USER=zammad_rw

3. Press CTRL+O, Enter, CTRL+X to write the changes and exit
4. Continue with the following commands in the terminal
   # run the container stack
   docker-compose --file docker-compose.yml up -d
5. Open a web browser and navigate to http://DNSorIP:8080
6. Click the Set up a new system button
7. Enter a first name, last name, email address and password > Click Create
8. Complete the Organization details form > Click Next
9. Click Skip on the Email Notification screen
10. Click Skip on the Connect Channels screen
11. Welcome to Zammad

Documentation: https://docs.zammad.org/en/latest/install/docker-compose.html