-
-
Save bbqchickenrobot/f2406c37c8dca8aee1a79d6b52c45653 to your computer and use it in GitHub Desktop.
Nginx reverse-proxy for RethinkDB Admin UI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Start your rethinkdb instance with this flag: | |
| `--bind all` (or `bind=all` in the configuration file for your instance) | |
| Block external access to the web UI with these two commands: | |
| `sudo iptables -A INPUT -i eth0 -p tcp --dport 8080 -j DROP` | |
| `sudo iptables -I INPUT -i eth0 -s 127.0.0.1 -p tcp --dport 8080 -j ACCEPT` | |
| Install nginx (if you haven't already): | |
| `sudo apt-get install nginx` | |
| Create a new virtual host (server block): | |
| `sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/rethinkdb` | |
| Edit this file: | |
| `sudo nano /etc/nginx/sites-available/rethink` | |
| to say: | |
| ``` | |
| server { | |
| listen 80; | |
| server_name domain.com; | |
| location /rethinkdb-admin/ { | |
| auth_basic "Restricted"; | |
| auth_basic_user_file /etc/nginx/.rethinkdb.pass; | |
| proxy_pass http://127.0.0.1:8080/; | |
| proxy_redirect off; | |
| proxy_set_header Authorization ""; | |
| } | |
| } | |
| ``` | |
| where `domain.com` is the host name (or IP address) of the server running the RethinkDB Admin UI. | |
| Create username and password (make sure you have apache2-utils installed `sudo apt-get install apache2-utils`): | |
| `cd /etc/nginx/` | |
| `htpasswd -c .rethinkdb.pass <username>` where `<username>` is the username you want. | |
| The command will ask you to enter the password for the username you chose. | |
| start/restart nginx | |
| `sudo service nginx start` | |
| or | |
| `sudo service nginx restart` | |
| Verify it works: | |
| Navigate to `http://domain.com/rethinkdb_admin` where domain.com is the host name (or IP address) of the server running the RethinkDB Admin UI. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment