Installation - Docker

Installation - Docker

Overview

To deploy PSKnowHOW, the following containers are essential:

  1. UI

  2. CustomAPI

  3. MongoDB

Optional containers can be included based on specific requirements. At least one processor container is required to be deployed along with the mandatory components.

  • jira-processor

  • devops-processor (collectors for Jenkins, GitHub, GitLab, Bamboo, Bitbucket, Zephyr, Sonar, and TeamCity)

  • azure-board-processor (for Azure Board)

  • azure-pipeline-repo (for Azure Pipeline and Azure Repo)

  • scp-api: (For Developer Board Kpis)

  • scm-core: (Collector for SCM Tools: GitHub, Bitbucket, GitLab, Azure Repository)

  • knowhow-scm-processor: (Improved New Collector for SCM Tools: GitHub, Bitbucket, GitLab, Azure Repository)

You can selectively deploy these containers as needed.


Step 1: Create Folder Structure

To create the "PSKnowHOW" directory on a Linux system:

mkdir /location/PSKnowhow

Replace /location/PSKnowhow with your preferred location. Ensure you have appropriate permissions and sufficient storage in the chosen directory.


Step 2: Download docker-compose.yaml

  1. Navigate to the PSKnowHOW GitHub repository.

  2. Download the docker-compose.yaml file.

  1. Save the file in the previously created PSKnowHOW folder.


Step 3: Edit docker-compose.yaml

  1. Update database credentials and other environment variables as specified in the Application Environmental Variables documentation.

Step 4: Pull Docker Images and Run Containers

  1. Open a terminal in the PSKnowHOW folder.

  2. Pull the images:

    docker-compose pull
  3. Run the containers:

    docker-compose up -d
  4. Access the application using the DNS in your browser.


Step 5: Run Database Backup Script

  1. Download the shell script to /var/knh on the server.

  2. Grant executable permissions:

    chmod +x /var/knh/dbbackup.sh
  3. Automate the backup process with crontab:

    (crontab -u root -l; echo "0 23 * * 1-7 /var/knh/dbbackup.sh") | crontab -u root -

    This schedules the backup every day at 11:00 PM.


Step 6: Backing Up to AWS S3 (Optional)

  1. Create an S3 Bucket: Set up an Amazon S3 bucket in a different region for redundancy.

  2. Configure AWS CLI: Install and configure the AWS CLI on your server.

  3. Modify Backup Script: Edit the dbbackup.sh script to include:

    aws s3 cp /var/backups/backup_filename.sql s3://your-s3-bucket-name/

Step 7: Post-Installation Steps

After completing the installation, refer to the Post-Installation Guide for further steps.

© 2022 Publicis Sapient. All rights reserved.