Install Nginx Proxy Manager on CentOS 7 Rumi, November 22, 2023 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 Administrations Configurations (Linux) DockerDocker Centos 7nginxNginx Proxy GUINginx Proxy Manager