---
description: >-
  If you just want to get AllQ running locally on your machine, here is a quick
  testing setup to get you started.
---

# Installation (Quick Start)

## Step #1

First we need to create some keys for our client and server to use to talk to each other. These are required for AllQueue to work.

You can generate these keys by running the server once without keys and in CONFIG mdoe, and the server will output key values for both client and server. You will use these keys in your configuration when you actually start the server. To do this you will run the following:

```bash
sudo docker run --rm=true -e "CONFIG_ONLY=true" blitline/allq:server_latest
```

This will output keys for both your client and server, and will look like this:&#x20;

![Example output (Note, the values are formatted for easy environment values, or bash script pasting)](https://s3.amazonaws.com/allqueue.com/allq_keys.png)

Please take note of the values produced, and save them for future steps. **NOTE: There are keys for both client and server, so you will need to differentiate them.**

## **Step #2**

Starting the server

On your server machine (or localhost), you will need to take the **A\_CURVE\_PUBLICKEY** and **A\_CURVE\_SECRETKEY** you identified in step #1 for the server and replace them in the script below:

```bash
docker run --name=allq_server -d \
  -p 7788:7788 \
  --restart=unless-stopped \
  -e "SERVER_PORT=7788" \
  -e "A_CURVE_SECRETKEY=$A_CURVE_SECRETKEY" \
  -e "A_CURVE_PUBLICKEY=$A_CURVE_PUBLICKEY" \
  --init \
  blitline/allq:server_latest
```

_Notice we started the server on port **7788**_

## Step #3

Starting the client

On your client machine (or localhost),  there are **4** values you need to set in order to talk to the server.

you will need to take the **A\_CURVE\_PUBLICKEY**, **A\_CURVE\_SECRETKEY,** and the **A\_CURVE\_SERVER\_PUBLICKEY** and replace them in the script below. Additionally, you will need to set the "**SERVER\_STRING**" to point to the URL of your server (don't forget the port).&#x20;

```bash
sudo docker run --name=allq_client \
   -d -p 7766:7766 \
   --restart=unless-stopped \
   -e "SERVER_STRING=ec2-54-19-99-11.compute-1.amazonaws.com:7788(Example)" \
   -e "A_CURVE_PUBLICKEY=$A_CURVE_PUBLICKEY" \
   -e "A_CURVE_SECRETKEY=$A_CURVE_SECRETKEY" \
   -e "A_CURVE_SERVER_PUBLICKEY=$A_CURVE_SERVER_PUBLICKEY" \
   blitline/allq:client_latest
```

## Step #4

Testing the setup

On the **CLIENT,** run the following:

```bash
docker exec allq_client /bin/bash -c "./stats.sh"
```

You should see a JSON result returned from the server.&#x20;

_If you get an error of the script times out, you can check the troubleshooting page._

### _VIOLA! You are done_
