Install Nginx Proxy Manager on CentOS 7

Nginx Proxy Manager is built on docker container. So, we need to deploy Docker first.

Update Docker Package Database. In a terminal window, type:

sudo yum check-update

Allow the operation to complete.

Remove if any docker is preinstalled with your OS-

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine

Install the Dependencies

Type in the following command:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

The –y switch indicates to the yum installer to answer “yes” to any prompts that may come up. The yum-utils switch adds the yum-config-manager. Docker uses a device mapper storage driver, and the device-mapper-persistent-data and lvm2 packages are required for it to run correctly.

Add the Docker Repository to CentOS

To install the edge or test versions of Docker, you need to add the Docker CE stable repository to your system. To do so, run the command:

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

A stable release is tested more thoroughly and has a slower update cycle. On the other hand, Edge release updates are more frequent but aren’t subject to as many stability tests.

Note: If you’re only going to use the stable release, don’t enable these extra repositories. The Docker installation process defaults to the latest version of Docker unless you specify otherwise. Leaving the stable repository enabled makes sure that you aren’t accidentally updating from a stable release to an edge release.

Install Docker On CentOS Using Yum

With everything set, you can finally move on to installing Docker on CentOS 7 by running:

sudo yum install docker-ce docker-compose

The system should begin the installation. Once it finishes, it will notify you the installation is complete and which version of Docker is now running on your system.

Manage Docker Service

Although you have installed Docker on CentOS, the service is still not running. To start the service, enable it to run at startup. Run the following commands in the order listed below.

Start Docker:

sudo systemctl start docker

Enable Docker:

sudo systemctl enable docker

Check the status of the service with:

sudo systemctl status docker

Now you have a docker up and running!

Now start deploying nginx proxy manager:

nano /opt/docker-compose.yml

Paste the below yml texts-

version: '3.8'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
# These ports are in format <host-port>:<container-port>
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
# Add any other Stream port you want to expose
# - '21:21' # FTP
environment:
# Mysql/Maria connection parameters:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
# Uncomment this if IPv6 is not enabled on your host
# DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db

db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./mysql:/var/lib/mysql

Now run-

docker compose up -d

After a while docker will pull the base and other images and complete the processes. Hit-

http://<your-ip>:81 

Default Administrator User is-

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.

And now start playing.

Src:
https://phoenixnap.com/kb/how-to-install-docker-centos-7
https://stackoverflow.com/questions/26472586/upgrade-docker-on-centos-7
https://nginxproxymanager.com/setup/#initial-run

Share

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.