- Use Case
- Log in →
This document presents a non-Kubernetes method of installing a Transponder. Please refer to the Transponder on Kubernetes page if you want to install Transponder on Kubernetes.
When choosing an instance, even the smallest
t1.small.x86 should be enough for most use-cases. In this tutorial we will use Ubuntu 19.04, however there’s no requirement on the OS itself, as long as it supports Docker:
There are several ways to install Docker, some of them are described here: https://docs.docker.com/install/linux/docker-ce/ubuntu/.
In this case we will use a convenience script from Docker:
curl -fsSL https://get.docker.com -o get-docker.sh
Now, install Docker Compose. Instructions can be found here: https://docs.docker.com/compose/install/:
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
At this point it would be a good idea to create an elastic IP so later there’s less configuration on the DNS side. For the sake of simplicity, we will just use existing public IP that we have got for this machine.
Add a wildcard A record pointing at the public IP of the server.
Once it’s created, you can also get your Cloudflare API key so
If you are not going to use HTTP/HTTPS tunnels and are only going to use webhook forwarding functionality, you can create a non wildcard record.
Let’s get an example configuration from our Transponder examples repository:
mkdir -p /opt/transponder
Now, get an
.env example file:
curl https://raw.githubusercontent.com/webhookrelay/transponder-deployment/master/cloudflare-dns/.env.example > .env
and populate it:
docker-compose up -d
To login, pick any subdomain under the wildcard and
HTTPS_API_PORT as port, in our case since we set
HTTPS_API_PORT=9302, the URL to connect to the admin dashboard will be: https://my.transponder.synpse.net:9302/login:
You will need to specify several details for the relay client so it can connect to this custom webhook server. Create a new file called
transponder.sh and specify these variables:
Source them (or just copy & paste it to your terminal):
Now, to create a new tunnel:
relay connect --host foo.transponder.synpse.net --crypto flexible http://localhost:4000
You will also be able to see the tunnel in the UI: