mirror of
				https://github.com/NginxProxyManager/nginx-proxy-manager.git
				synced 2025-10-31 15:53:33 +00:00 
			
		
		
		
	Merge pull request #966 from razvanstoica89/master
Add new details about how to run this image on a Raspberry Pi device.
This commit is contained in:
		
							
								
								
									
										61
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										61
									
								
								README.md
									
									
									
									
									
								
							| @@ -19,7 +19,7 @@ | |||||||
| This project comes as a pre-built docker image that enables you to easily forward to your websites | 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. | running at home or otherwise, including free SSL, without having to know too much about Nginx or Letsencrypt. | ||||||
|  |  | ||||||
| - [Quick Setup](https://nginxproxymanager.com#quick-setup) | - [Quick Setup](#quick-setup) | ||||||
| - [Full Setup](https://nginxproxymanager.com/setup/) | - [Full Setup](https://nginxproxymanager.com/setup/) | ||||||
| - [Screenshots](https://nginxproxymanager.com/screenshots/) | - [Screenshots](https://nginxproxymanager.com/screenshots/) | ||||||
|  |  | ||||||
| @@ -52,6 +52,65 @@ I won't go in to too much detail here but here are the basics for someone new to | |||||||
| 3. Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or [Amazon Route53](https://github.com/jc21/route53-ddns) | 3. Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or [Amazon Route53](https://github.com/jc21/route53-ddns) | ||||||
| 4. Use the Nginx Proxy Manager as your gateway to forward to your other web based services | 4. Use the Nginx Proxy Manager as your gateway to forward to your other web based services | ||||||
|  |  | ||||||
|  | ## Quick Setup | ||||||
|  |  | ||||||
|  | 1. Install Docker and Docker-Compose | ||||||
|  |  | ||||||
|  | - [Docker Install documentation](https://docs.docker.com/install/) | ||||||
|  | - [Docker-Compose Install documentation](https://docs.docker.com/compose/install/) | ||||||
|  |  | ||||||
|  | 2. Create a docker-compose.yml file similar to this: | ||||||
|  |  | ||||||
|  | ```yml | ||||||
|  | version: '3' | ||||||
|  | services: | ||||||
|  |   app: | ||||||
|  |     image: 'jc21/nginx-proxy-manager:latest' | ||||||
|  |     ports: | ||||||
|  |       - '80:80' | ||||||
|  |       - '81:81' | ||||||
|  |       - '443:443' | ||||||
|  |     environment: | ||||||
|  |       DB_MYSQL_HOST: "db" | ||||||
|  |       DB_MYSQL_PORT: 3306 | ||||||
|  |       DB_MYSQL_USER: "npm" | ||||||
|  |       DB_MYSQL_PASSWORD: "npm" | ||||||
|  |       DB_MYSQL_NAME: "npm" | ||||||
|  |     volumes: | ||||||
|  |       - ./data:/data | ||||||
|  |       - ./letsencrypt:/etc/letsencrypt | ||||||
|  |   db: | ||||||
|  |     image: 'jc21/mariadb-aria:latest' | ||||||
|  |     environment: | ||||||
|  |       MYSQL_ROOT_PASSWORD: 'npm' | ||||||
|  |       MYSQL_DATABASE: 'npm' | ||||||
|  |       MYSQL_USER: 'npm' | ||||||
|  |       MYSQL_PASSWORD: 'npm' | ||||||
|  |     volumes: | ||||||
|  |       - ./data/mysql:/var/lib/mysql | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | 3. Bring up your stack | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | docker-compose up -d | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | 4. 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](http://127.0.0.1:81) | ||||||
|  |  | ||||||
|  | Default Admin User: | ||||||
|  | ``` | ||||||
|  | Email:    admin@example.com | ||||||
|  | Password: changeme | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Immediately after logging in with this default user you will be asked to modify your details and change your password. | ||||||
|  |  | ||||||
|  |  | ||||||
| ## Contributors | ## Contributors | ||||||
|  |  | ||||||
|   | |||||||
| @@ -37,75 +37,3 @@ footer: MIT Licensed | Copyright © 2016-present jc21.com | |||||||
|     <p>Configure other users to either view or manage their own hosts. Full access permissions are available.</p> |     <p>Configure other users to either view or manage their own hosts. Full access permissions are available.</p> | ||||||
|   </div> |   </div> | ||||||
| </div> | </div> | ||||||
|  |  | ||||||
| ### Quick Setup |  | ||||||
|  |  | ||||||
| 1. Install Docker and Docker-Compose |  | ||||||
|  |  | ||||||
| - [Docker Install documentation](https://docs.docker.com/install/) |  | ||||||
| - [Docker-Compose Install documentation](https://docs.docker.com/compose/install/) |  | ||||||
|  |  | ||||||
| 2. Create a docker-compose.yml file similar to this: |  | ||||||
|  |  | ||||||
| ```yml |  | ||||||
| version: '3' |  | ||||||
| services: |  | ||||||
|   app: |  | ||||||
|     image: 'jc21/nginx-proxy-manager:latest' |  | ||||||
|     ports: |  | ||||||
|       - '80:80' |  | ||||||
|       - '81:81' |  | ||||||
|       - '443:443' |  | ||||||
|     environment: |  | ||||||
|       DB_MYSQL_HOST: "db" |  | ||||||
|       DB_MYSQL_PORT: 3306 |  | ||||||
|       DB_MYSQL_USER: "npm" |  | ||||||
|       DB_MYSQL_PASSWORD: "npm" |  | ||||||
|       DB_MYSQL_NAME: "npm" |  | ||||||
|     volumes: |  | ||||||
|       - ./data:/data |  | ||||||
|       - ./letsencrypt:/etc/letsencrypt |  | ||||||
|   db: |  | ||||||
|     image: 'jc21/mariadb-aria:latest' |  | ||||||
|     environment: |  | ||||||
|       MYSQL_ROOT_PASSWORD: 'npm' |  | ||||||
|       MYSQL_DATABASE: 'npm' |  | ||||||
|       MYSQL_USER: 'npm' |  | ||||||
|       MYSQL_PASSWORD: 'npm' |  | ||||||
|     volumes: |  | ||||||
|       - ./data/mysql:/var/lib/mysql |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| 3. Bring up your stack |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| docker-compose up -d |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| 4. 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](http://127.0.0.1:81) |  | ||||||
|  |  | ||||||
| Default Admin User: |  | ||||||
|  |  | ||||||
| ``` |  | ||||||
| Email:    admin@example.com |  | ||||||
| Password: changeme |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| Immediately after logging in with this default user you will be asked to modify your details and change your password. |  | ||||||
|  |  | ||||||
| 5. Upgrading to new versions |  | ||||||
|  |  | ||||||
| ```bash |  | ||||||
| docker-compose pull |  | ||||||
| docker-compose up -d |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| This project will automatically update any databases or other requirements so you don't have to follow |  | ||||||
| any crazy instructions. These steps above will pull the latest updates and recreate the docker |  | ||||||
| containers. |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,6 @@ | |||||||
| # Full Setup Instructions | # Full Setup Instructions | ||||||
|  |  | ||||||
| ### MySQL Database | ## MySQL Database | ||||||
|  |  | ||||||
| If you opt for the MySQL configuration you will have to provide the database server yourself. You can also use MariaDB. Here are the minimum supported versions: | If you opt for the MySQL configuration you will have to provide the database server yourself. You can also use MariaDB. Here are the minimum supported versions: | ||||||
|  |  | ||||||
| @@ -16,7 +16,7 @@ When using a `mariadb` database, the NPM configuration file should still use the | |||||||
|  |  | ||||||
| ::: | ::: | ||||||
|  |  | ||||||
| ### Running the App | ## Running the App | ||||||
|  |  | ||||||
| Via `docker-compose`: | Via `docker-compose`: | ||||||
|  |  | ||||||
| @@ -72,7 +72,7 @@ Then: | |||||||
| docker-compose up -d | docker-compose up -d | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| ### Running on Raspberry PI / ARM devices | ## Running on Raspberry PI / ARM devices | ||||||
|  |  | ||||||
| The docker images support the following architectures: | The docker images support the following architectures: | ||||||
| - amd64 | - amd64 | ||||||
| @@ -89,8 +89,62 @@ for a list of supported architectures and if you want one that doesn't exist, | |||||||
| Also, if you don't know how to already, follow [this guide to install docker and docker-compose](https://manre-universe.net/how-to-run-docker-and-docker-compose-on-raspbian/) | Also, if you don't know how to already, follow [this guide to install docker and docker-compose](https://manre-universe.net/how-to-run-docker-and-docker-compose-on-raspbian/) | ||||||
| on Raspbian. | on Raspbian. | ||||||
|  |  | ||||||
|  | Via `docker-compose`: | ||||||
|  |  | ||||||
| ### Initial Run | ```yml | ||||||
|  | version: "3" | ||||||
|  | services: | ||||||
|  |   app: | ||||||
|  |     image: 'jc21/nginx-proxy-manager:latest' | ||||||
|  |     restart: always | ||||||
|  |     ports: | ||||||
|  |       # Public HTTP Port: | ||||||
|  |       - '80:80' | ||||||
|  |       # Public HTTPS Port: | ||||||
|  |       - '443:443' | ||||||
|  |       # Admin Web Port: | ||||||
|  |       - '81:81' | ||||||
|  |     environment: | ||||||
|  |       # These are the settings to access your db | ||||||
|  |       DB_MYSQL_HOST: "db" | ||||||
|  |       DB_MYSQL_PORT: 3306 | ||||||
|  |       DB_MYSQL_USER: "changeuser" | ||||||
|  |       DB_MYSQL_PASSWORD: "changepass" | ||||||
|  |       DB_MYSQL_NAME: "npm" | ||||||
|  |       # If you would rather use Sqlite uncomment this | ||||||
|  |       # and remove all DB_MYSQL_* lines above | ||||||
|  |       # DB_SQLITE_FILE: "/data/database.sqlite" | ||||||
|  |       # Uncomment this if IPv6 is not enabled on your host | ||||||
|  |       # DISABLE_IPV6: 'true' | ||||||
|  |     volumes: | ||||||
|  |       - ./data/nginx-proxy-manager:/data | ||||||
|  |       - ./letsencrypt:/etc/letsencrypt | ||||||
|  |     depends_on: | ||||||
|  |       - db | ||||||
|  |   db: | ||||||
|  |     image: ghcr.io/linuxserver/mariadb | ||||||
|  |     restart: unless-stopped | ||||||
|  |     environment: | ||||||
|  |       PUID: 1001 | ||||||
|  |       PGID: 1001 | ||||||
|  |       TZ: "Europe/London" | ||||||
|  |       MYSQL_ROOT_PASSWORD: "changeme" | ||||||
|  |       MYSQL_DATABASE: "npm" | ||||||
|  |       MYSQL_USER: "changeuser" | ||||||
|  |       MYSQL_PASSWORD: "changepass" | ||||||
|  |     volumes: | ||||||
|  |       - ./data/mariadb:/config | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | _Please note, that `DB_MYSQL_*` environment variables will take precedent over `DB_SQLITE_*` var> | ||||||
|  |  | ||||||
|  | Then: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | docker-compose up -d | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## Initial Run | ||||||
|  |  | ||||||
| After the app is running for the first time, the following will happen: | After the app is running for the first time, the following will happen: | ||||||
|  |  | ||||||
| @@ -101,7 +155,7 @@ After the app is running for the first time, the following will happen: | |||||||
| This process can take a couple of minutes depending on your machine. | This process can take a couple of minutes depending on your machine. | ||||||
|  |  | ||||||
|  |  | ||||||
| ### Default Administrator User | ## Default Administrator User | ||||||
|  |  | ||||||
| ``` | ``` | ||||||
| Email:    admin@example.com | Email:    admin@example.com | ||||||
| @@ -110,7 +164,7 @@ Password: changeme | |||||||
|  |  | ||||||
| Immediately after logging in with this default user you will be asked to modify your details and change your password. | Immediately after logging in with this default user you will be asked to modify your details and change your password. | ||||||
|  |  | ||||||
| ### Configuration File | ## Configuration File | ||||||
|  |  | ||||||
| ::: warning | ::: warning | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user