How to install Docker on Redhat Linux RHEL 7 - yum

Prerequisites

To install CS Docker Engine, you need root or sudo privileges and you need access to a command line on the system.

Install using a repository

Install on CentOS 7.1/7.2 & RHEL 7.0/7.1/7.2/7.3 (YUM-based systems)

This section explains how to install on CentOS 7.1/7.2 & RHEL 7.0/7.1/7.2/7.3. Only these versions are supported. CentOS 7.0 is not supported. On RHEL, depending on your current level of updates, you may need to reboot your server to update its RHEL kernel.
  1. Add the Docker public key for CS Docker Engine packages:
    $ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
    
    Note: If the key server above does not respond, you can try one of these:
    • pgp.mit.edu
    • keyserver.ubuntu.com
  2. Install yum-utils if necessary:
    $ sudo yum install -y yum-utils
    
  3. Add the Docker repository:
    $ sudo yum-config-manager --add-repo https://packages.docker.com/1.12/yum/repo/main/centos/7
    
    This adds the repository of the latest version of CS Docker Engine. You can customize the URL to install an older version.
  4. Install Docker CS Engine:
    • Latest version:
      $ sudo yum makecache fast
      
      $ sudo yum install docker-engine
      
    • Specific version:
      On production systems, you should install a specific version rather than relying on the latest.
      1. List the available versions:
        $ yum list docker-engine.x86_64  --showduplicates |sort -r
        
        The second column represents the version.
      2. Install a specific version by adding the version after docker-engine, separated by a hyphen (-):
        $ sudo yum install docker-engine-
        
  5. Configure devicemapper:
    By default, the devicemapper graph driver does not come pre-configured in a production-ready state. Follow the documented step by step instructions to configure devicemapper with direct-lvm for production to achieve the best performance and reliability for your environment.
  6. Configure the Docker daemon to start automatically when the system starts, and start it now.
    $ sudo systemctl enable docker.service
    $ sudo systemctl start docker.service
    
  7. Confirm the Docker daemon is running:
    $ sudo docker info
    
  8. Only users with sudo access will be able to run docker commands. Optionally, add non-sudo access to the Docker socket by adding your user to the docker group.
    $ sudo usermod -a -G docker $USER

Installing Hashicorp Vault

https://www.vaultproject.io/downloads.html

Download the VAULT executable for Linux - 32bit, 64bit or arm/arm64

And just run it as a shell script

./vault

There are options how to use it, just follow the document.

$ vault
usage: vault [-version] [-help]  [args]

Common commands:
    delete           Delete operation on secrets in Vault
    path-help        Look up the help for a path
    read             Read data or secrets from Vault
    renew            Renew the lease of a secret
    revoke           Revoke a secret.
    server           Start a Vault server
    status           Outputs status of whether Vault is sealed and if HA mode is enabled
    unwrap           Unwrap a wrapped secret
    write            Write secrets or configuration into Vault

All other commands:
    audit-disable    Disable an audit backend
    audit-enable     Enable an audit backend
    audit-list       Lists enabled audit backends in Vault
    auth             Prints information about how to authenticate with Vault
    auth-disable     Disable an auth provider
    auth-enable      Enable a new auth provider
    capabilities     Fetch the capabilities of a token on a given path
    generate-root    Generates a new root token
    init             Initialize a new Vault server
    key-status       Provides information about the active encryption key
    list             List data or secrets in Vault
    mount            Mount a logical backend
    mount-tune       Tune mount configuration parameters
    mounts           Lists mounted backends in Vault
    policies         List the policies on the server
    policy-delete    Delete a policy from the server
    policy-write     Write a policy to the server
    rekey            Rekeys Vault to generate new unseal keys
    remount          Remount a secret backend to a new path
    rotate           Rotates the backend encryption key used to persist data
    seal             Seals the vault server
    ssh              Initiate a SSH session
    step-down        Force the Vault node to give up active duty
    token-create     Create a new auth token
    token-lookup     Display information about the specified token
    token-renew      Renew an auth token if there is an associated lease
    token-revoke     Revoke one or more auth tokens
    unmount          Unmount a secret backend
    unseal           Unseals the vault server
    version          Prints the Vault version

Installing Ingress Controller - Kubernetes

Installing the Ingress Controller Prerequisites Make sure you have access to the Ingress controller image: For NGINX Ingress controll...