Table of Contents

Nginx proxy manager is an easy tool to help manage your applications running on different ports. It has the added benefit of adding free SSL via letsencrypt. You can manager users, modify permission and check audit logs. Best of all – it is on docker!

Install docker

Create docker-compose.yml and paste the below,

version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Then run docker-compose up -d

Monitor your running docker docker ps

docker psDocker container is running. Now open http://your.ip:81

Default credentials – can be changed after logging in.

Email:    admin@example.com
Password: changeme

Now go to Hosts – Proxy Hosts – Add Proxy Host

new-proxy-host Make sure you have a A record on your domain and modify DNS accordingly. Next go to SSL tab and choose whatever you feel best. Recommend Requesting a new SSL via letsencrypt. Click save and done. Now open your IP/domain mapped and it should open with SSL on port 443.

You can add as many as proxy hosts as your want and serve traffic via SSL.

Reference:

Nginx Proxy Manager