Installing cRPD on Docker
This section outlines the steps to install the cRPD container in a Linux server environment that is running Ubuntu or Red Hat Enterprise Linux (RHEL). The cRPD container is packaged in a Docker image and runs in the Docker Engine on the Linux host.
This section includes the following topics:
Before You Install
Before you install cRPD as routing service to achieve routing functionality in a Linux container environment, ensure to:
-
Verify the system requirement specifications for the Linux server to deploy the cRPD, see Requirements for Deploying cRPD on a Linux Server.
Install and Verify Docker
Install and configure Docker on Linux host platform to implement the Linux container environment, see Install Docker for installation instructions on the supported Linux host operating systems.
Verify the Docker installation. See Debugging cRPD Application.
To install the latest Docker:
root@ubuntu-vm18:~# curl -fsSL
https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add
-
root@ubuntu-vm18:~# add-apt-repository "deb
[arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs) stable"
root@ubuntu-vm18:~# apt update
root@ubuntu-vm18:~# apt install docker-ce
Download the cRPD Software
The cRPD software is available as a cRPD Docker file from the Juniper Internal Docker registry.
There are two ways to download the software:
-
Juniper Docker Registry
-
Juniper software download page
-
Before you import the cRPD software, ensure that Docker is installed on the Linux host and that the Docker Engine is running.
-
Ensure to register with Juniper Support before you download the cRPD software.
Once the Docker Engine has been installed on the host, perform the following to download and start using the cRPD image:
To download the cRPD software using the Juniper Docker Registry:
Download cRPD Software from Juniper URL
Creating Data Volumes and Running cRPD using Docker
To create data volumes:
To launch cRPD in host networking mode:
-
In the host mode, the network namespace is shared. For example, if an interface is defined inside a pod, the same interface is visible on the host as well. Docker containers uses the host network namespace. Run the command to launch cRPD in host networking mode:
root@ubuntu-vm18:~# docker run --rm --detach --name crpd01 -h crpd01 --privileged --net=host -v crpd01-config:/config -v crpd01-varlog:/var/log -it crpd:19.2R1.8
Configuring Memory
To limit the amount of memory allocated to the cRPD:
root@ubuntu-vm18:~# docker run --rm --detach --name
crpd01 -h crpd01 --privileged -v crpd01-config:/config -v
crpd01-varlog:/var/log -m 2048MB --memory-swap=2048MB -it
crpd:19.2R1.8
Configuring cRPD using the CLI
cRPD provides Junos command line configuration and operational commands for routing service. It provides subset of routing protocols configuration that enable node participates in topology and routing.
You can configure interfaces from Linux shell. Interface configuration is available only for the ISO addresses.
To configure the cRPD container using the CLI: