add notes about running your own server

This commit is contained in:
Roman Shtylman
2012-12-24 03:14:19 -05:00
parent 5340659954
commit 929473913f

View File

@@ -10,6 +10,8 @@ Great for working with browser testing tools like browserling or external api ca
npm install -g localtunnel npm install -g localtunnel
``` ```
This will install the localtunnel module globally and add the 'lt' client cli tool to your PATH.
## use ## ## use ##
Super Easy! Assuming your local server is running on port 8000, just use the ```lt``` command to start the tunnel. Super Easy! Assuming your local server is running on port 8000, just use the ```lt``` command to start the tunnel.
@@ -22,6 +24,40 @@ Thats it! It will connect to the tunnel server, setup the tunnel, and tell you w
You can restart your local server all you want, ```lt``` is smart enough to detect this and reconnect once it is back. You can restart your local server all you want, ```lt``` is smart enough to detect this and reconnect once it is back.
### custom server
The default localtunnel client connects to the ```localtunnel.me``` server. You can however easily setup and run your own server. In order to run your own localtunnel server you must ensure that your server can meet the following requirements:
* You can setup DNS entries for your domain.tld and for *.domain.tld (or sub.domain.tld and *.sub.domain.tld)
* The server can accept incoming TCP connections for any non-root TCP port (ports over 1000).
The above are important as the client will ask the server for a subdomain under a particular domain. The server will listen on any OS assigned TCP port for client connections
#### setup
```shell
// pick a place where the files will live
git clone git://github.com/shtylman/localtunnel.git
cd localtunnel
npm install
// server set to run on port 1234
bin/server --port 1324
```
The localtunnel server is now running and waiting for client requests on port 1234. You will most likely want to setup a reverse proxy to listen on port 80 (or start localtunnel on port 80 directly).
#### use your server
You can now use your domain with the ```--host``` flag for the ```lt``` client.
```shell
lt --host http://sub.example.tld:1234 --port 9000
```
You will be assigned a url similar to ```qdci.sub.example.com:1234```
If your server is being a reverse proxy (i.e. nginx) and is able to listen on port 80, then you do not need the ```:1234``` part of the hostname for the ```lt``` client
## API ## ## API ##
The localtunnel client is also usable through an API (test integration, automation, etc) The localtunnel client is also usable through an API (test integration, automation, etc)