nginx-proxy-manager README

The project's README from github.com/NginxProxyManager/nginx-proxy-manager. As one markdown file: README.md.



This project comes as a pre-built Docker image that enables you to easily forward to your websites running at home or otherwise, including free SSL, without having to know too much about Nginx or Letsencrypt.

Project Goal

I created this project to fill a personal need to provide users with an easy way to accomplish reverse proxying hosts with SSL termination, and it had to be so easy that a monkey could do it. This goal hasn't changed. While there might be advanced options, they are optional, and the project should be as simple as possible so that the barrier to entry here is low.

Buy Me A Coffee

Features

::: warning armv7 is no longer supported in version 2.14+. This is due to Nodejs dropping support for armhf. Please use the 2.13.7 image tag if this applies to you. :::

Hosting your home network

I won't go into too much detail here, but here are the basics for someone new to this self-hosted world.

  1. Your home router will have a Port Forwarding section somewhere. Log in and find it
  2. Add port forwarding for ports 80 and 443 to the server hosting this project
  3. Configure your domain name details to point to your home, either with a static ip or a service like
  4. Use the Nginx Proxy Manager as your gateway to forward to your other web-based services

Quick Setup

  1. Install Docker
  2. Create a docker-compose.yml file similar to this:
services:
  app:
    image: 'docker.io/jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

This is the bare minimum configuration required. See the documentation for more.

  1. Bring up your stack by running
docker compose up -d
  1. Log in to the Admin UI

When your docker container is running, connect to it on port 81 for the admin interface. Sometimes this can take a little bit because of the entropy of keys.

http://127.0.0.1:81

Contributing

All are welcome to create pull requests for this project, against the develop branch. Official releases are created from the master branch.

CI is used in this project. All PR's must pass before being considered. After passing, docker builds for PR's are available on dockerhub for manual verifications.

Documentation within the develop branch is available for preview at https://develop.nginxproxymanager.com

Contributors

Special thanks to all of our contributors.

Getting Support

  1. Found a bug?
  2. Discussions
  3. Reddit

nginx-proxy-manager (NginxProxyManager/nginx-proxy-manager)

Searching Database…

这是什么?Nginx Proxy Manager 是一个预构建的 Docker 容器,提供网页管理界面,用于管理 Nginx 反向代理主机,包括免费 SSL 证书,无需了解 Nginx 配置。
它是配置文件生成器,还是作为实时服务器运行?它以实时运行的 Docker 容器形式存在,带有自己的管理网页界面(基于 Tabler 构建),位于你的其他服务前面,实时地把流量转发给它们。
我该怎么让它跑起来?安装 Docker,创建一个包含最少配置的 docker-compose.yml,运行 docker compose up,然后通过 81 端口访问管理界面并登录。
在家里使用它需要开放路由器的端口吗?如果在家自建服务,需要在路由器上把 80 和 443 端口转发到运行该容器的服务器,并把域名指向你的家庭 IP(可以使用固定 IP 或动态 DNS 服务)。
硬件支持或首次启动有什么需要注意的坑吗?2.14 及以上版本不再支持 armv7,因为 Node.js 放弃了 armhf 支持(请改用镜像标签 2.13.7);另外,管理界面首次启动时可能要等一会儿,因为生成密钥时需要积累足够的随机数据。
这个项目是为谁打造的?它面向自建服务和家庭实验室用户,希望在不深入学习 Nginx 或 Let's Encrypt 的情况下,安全地把家里的服务暴露到互联网上。
它会自动支持 SSL 吗?会。它可以通过 Let's Encrypt 自动签发免费 SSL 证书,你也可以上传自己的自定义 SSL 证书。
我能限制对代理主机的访问吗?可以。它支持访问列表(Access Lists)和基础 HTTP 认证,用来限制谁能访问你托管的服务。
多人能一起管理这个代理吗?可以。它提供带权限的用户管理和审计日志,还为高级用户提供高级 Nginx 配置选项。
作者为什么不直接编辑 Nginx 配置文件,而要自己做这个?作者希望有一个足够简单的界面,让任何人在没有 Nginx 或 Letsencrypt 相关知识的情况下,也能设置反向代理并完成 SSL 终止。
Size
23.1 MB
Stars
34.4K
Age
8y
Commits · 90 Days