Skip to content

automate-this/rconfig6-docker

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

rConfig v6 Docker Compose Repository

A repo for to setup containers for the purpose of running rConfig in Docker.
Explore the docs »

Intro · Installation · Usage · Contributing · License · Support

Intro

rConfig v6 is an enterprise grade Network Configuration Management (NCM) software package with superior NCM features and capabilities to help you easily manage configurations on large and small heterogenous networks. rConfig v6 is our flagship professional version of rConfig aimed at high value networks and business operations. rConfig v6 runs natively on many variants of Linux. Within this repo, we have developed docker compose files and related artifacts to allow our customers run rConfig v6 within a Docker environment.

Supported OS

  • Rocky Linux 8.4+
  • RHEL Linux 8.4+
  • CentOS Linux 8.4+

These scripts are not tested on Docker Desktop or Docker for Windows at the time of this commit.

Of course, you may download or clone these files, and edit as you see fit. But you will need an rConfig v6 professional license to download rConfig v6 code base. This is available over at rconfig.com.

Check out our docs www.rconfig.com/docs to learn more.

(back to top)

Installation

We have made it super easy to get started with rConfig v6 on Docker. Follow the steps below to get started.

Prerequisites

Some prerequisites are needed before you get started.

  • OS
    • Any latest version of CentOS, RHEL, Rocky or Ubunutu
  • Docker
    • Any latest version of Docker or Docker-CE
    • Any latest version of Docker Compose

Your OS will need git installed to clone this repo. Internet access for the host VM is assumed also - at least to github and rconfig.com.

Useful URLS

Installation

  1. Clone this repository to a directory of your choosing.

    cd /var/www/html
    git clone https://github.com/rconfig/rconfig6-docker.git
  2. Create top level .env file

    cd rconfig6-docker
    cp .env.example .env
  3. Edit the .env file with your DB and other parameters

    vim .env
    APP_URL=somehostname.yourdomain.com
    APP_PORT=8080
    
    DB_CONNECTION=mysql
    DB_HOST=rconfig6-mariadb
    DB_PORT=3306
    DB_USERNAME=root
    DB_PASSWORD=
    
    RCONFIG_API_TOKEN=
    
    #REDIS ENV CONFIG
    REDIS_HOST=rconfig6-redis
    REDIS_PASSWORD=null
    REDIS_PORT=6379
    
    #EXPOSED PORTS
    EXPOSED_APP_PORT=8080

If you are uncertain about any of the above, the most important items to change are the DB_PASSWORD and the RCONFIG_API_TOKEN

  1. Bring up the containers. This time we remove the Horizon container from the build as the application init is not complete so will throw errors. (This will take a few minutes the first time)

    docker-compose up --scale horizon=0 -d --build
  2. Once the comtainers are up and running with no errors from the previous output, login to the php-apache container

    docker-compose exec php-apache /bin/bash
  3. Download envoy script

    wget https://www.rconfig.com/downloads/rconfig6-docker-envoy.blade.php -O /var/www/html/rconfig6/Envoy.blade.php
  4. Run the envoy init

    envoy run init --dbhost=$DB_HOST --dbuser=$DB_USERNAME --dbpass=$DB_PASSWORD --hostname=$APP_URL --apitoken=$RCONFIG_API_TOKEN
  5. run the envoy deploy

    envoy run deploy --apitoken=$RCONFIG_API_TOKEN
  6. Once the installation completes with no errors, exit the container, bring everything down, and start all containers up.

    exit
    docker-compose down
    docker-compose up -d --build
  7. your final output from the previous step should look like this

[+] Running 6/6
⠿ Network rconfig6-docker_rconfig6Network  Created       0.3s
⠿ Container rconfig6-redis                 Started       0.6s
⠿ Container rconfig6-mariadb               Started       0.7s
⠿ Container rconfig6-php-apache            Started       1.1s
⠿ Container rconfig6-horizon-supervisor    Started       1.6s
⠿ Container rconfig6-cronjob               Started       1.6s

When troubleshooting issues, the following commands are useful. docker ps -a docker logs CONTAINERNAME

Disk or storage permissions issues

If you have permissions issues, such as errors that rConfig cannot write to the storage directory, follow these steps.

  1. Login to the php-apache container

    docker-compose exec php-apache /bin/bash
  2. View the users list and find the id for the www-data account

    more /etc/passwd | grep www
  3. The output should be similar to this

    www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
  4. Simply apply the correct permissions to the persistentdata directory

    chown -R 33 persistentdata/

(back to top)

Usage

The default port for the web app is 8080. So go ahead and login to yourhostname.domain.com:8080 with the rConfig default creds per the documentation.

Please refer to the Documentation

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

This code base for this repository's code is distributed under the MIT License. See LICENSE.txt for more information. rConfig v6 is excluded from this license and repository.

(back to top)

Support

Although we provide this code free and open source, rConfig v6 is based on a professional subscription arrangement. You may open issues in the issue section here at github, but rConfig Professional subscribers should open a ticket via our normal support channels.

About

Docker compose files for rConfig v6

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dockerfile 91.5%
  • Shell 8.5%