Installation

There are several ways to get Backslash up and running, but the simplest way is probably using Docker and docker-compose.

Step 1: Install Prerequisites

To run Backslash as a Docker container you’ll need to have Docker installed. This is well covered in the Docker installation guide. You will also need to install docker-compose, which is covered here.

Step 2: Obtain the Compose File

In order for Backslash to run, it needs its various supporting services to run in adjacent containers. docker-compose takes care of this by starting the various services in their respective containers and linking the various pieces together, but in order to do so it needs the configuration file that specifies the deployment.

You can download the reference docker-compose file from the Backslash repository:

$ mkdir /opt/backslash
$ mkdir /opt/backslash/docker
$ curl https://raw.githubusercontent.com/getslash/backslash/master/docker/docker-compose.yml > /opt/backslash/docker/docker-compose.yml

Note

The docker-compose reference file might change as versions progress and more services are needed or modifications to existing services are needed. You will need to keep track of this file before upgrading.

Step 3: Configure Backslash to Run as a Service

Once you have the compose file in place, you can configure your service to run on your host server. We recommend using systemd to achieve this (which is shown here), but you can use other mechanisms or approaches as you see fit.

Create a unit description file – we’ll call it here backslash-docker – and place it in systemd’s configuration directory as /etc/systemd/system/backslash-docker.service:

# /etc/systemd/system/backslash-docker.service
[Unit]
Description=Backslash test reporting service
Requires=docker.service
After=docker.service

[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/opt/backslash/docker
ExecStartPre=-/usr/local/bin/docker-compose -f docker-compose.yml -p backslash down
ExecStart=/usr/local/bin/docker-compose  -f docker-compose.yml -p backslash up -d
ExecStop=/usr/local/bin/docker-compose -f docker-compose.yml -p backslash down

[Install]
WantedBy=multi-user.target

Once you have created the unit file you can enable it to start on boot:

$ systemctl daemon-reload
$ systemctl enable backslash-docker

Step 4: Start Backslash

You can start Backslash by running:

$ systemctl start backslash-docker

Note

The initial execution will take longer than usual because the supporting images have to be fetched from the Internet. If you want to see the progress yourself, you can consider running docker-compose manually on the first run

Now that the server is up and running, it’s time to configure your server. You can read about it in the Server Configuration section.

Upgrade

The way to upgrade an existing deployment to the latest version is: 1. update the docker image:

$ docker pull getslash/backslash
  1. restart the daemon:
$ sudo systemctl restart backslash-docker