Making Docker Containers Available over the Internet with Nginx Proxy Manager

Making Docker Containers Available over the Internet with Nginx Proxy Manager

July 12, 2021 0 By Tobias

In this tutorial I explain how to make your services hosted on your Unraid server available on the Internet, outside your home network. If you don’t have a static IP, you need a dynamic subdomain, with DuckDNS: Create a free subdomain on Unraid.

Of course you also need a container you want to share, in this example I’m going to use Nextcloud.

Install and configure Nginx Proxy Manager

In the “Apps” tab just search for “NginxProxyManager” and click on Install.
The default ports can usually be left as they are, unless the ports are already in use by other containers.

Port shares

After installation, you need to share the http and https port previously set in the Docker container configuration on your network. With the default port settings of the container, you need to forward the external port 443 to the internal port 18443 for https and the external port 80 to the internal port 1880 for http.

If everything is set up correctly, you can enter your External IP address in the browser. Here is your public IP:

When you open it in your browser you should see the following page:

Nginx Proxy Manager Initial Login

After you have installed the Nginx Proxy Manager and enabled the ports you can now access the web interface. When you first open it, you will be greeted by a login screen.

With the following credentials you can log in to the web interface:

Email:    [email protected]
Password: changeme

After that you will be asked to change your data.

Add proxy host

After you have changed your credentials, you will land on the dashboard. Here you click on “Proxy Hosts” and then on “Add Proxy Hosts”.
At “Domain Names” you enter your domain, e.g. your full subdomain of DuckDNS or your own domain. At “Forward Hostname / IP” you enter the IP of your service which should be released. Usually this is the IP address of your Unraid server. Under Port you enter the exact port of the service. For Nextcloud this would be e.g. 443.

Encrypt connection with SSL

To encrypt the connection now, so that your data is also secure, simply click on the tab “SSL” and select “Request a new SSL Zertifacate” and then click on Save. Now the desired service should be accessible under the respective domain.