Try SR Linux

SR Linux Network Operating System

SR Linux is a part of the Nokia Data Center Fabric solution that has been designed from the ground up to free your cloud builder networking teams to rapidly design and deploy, easily adapt and integrate and confidently operate and automate data center network fabrics: at scale.

SR Linux is a truly open, extensible and resilient network operating system (NOS) is the foundation of this next generation solution, enabling scalability, flexibility and efficiency across your data center and cloud environments.

Open container image

To make SR Linux easily available to everyone, Nokia provides a free and unrestricted access to SR Linux container via publicly accessible GitHub container registry. This means that anyone can pull SR Linux container image exactly the same way as they would pull any other image:

docker pull ghcr.io/nokia/srlinux

When image is referenced without a tag, the latest container image version will be pulled. To obtain a specific version of a containerized SR Linux, refer to the list of tags the nokia/srlinux image has and change the docker pull command accordingly.

Run SR Linux

When the image is pulled to a local image store, you can start exploring SR Linux by either running a full-fledged lab topology, or by starting a single container to explore SR Linux CLI and its management interfaces.

A system on which you can run SR Linux containers should conform to the following requirements:

  1. Linux OS with a kernel v4+.
  2. Docker container runtime.
  3. At least 2 vCPU and 4GB RAM.
  4. A user with administrative privileges.

Let's explore the different ways you can launch SR Linux container.

Docker CLI

docker CLI offers a quick way to run standalone SR Linux container:

docker run -t -d --rm --privileged \
  -v $(pwd)/topology.yml:/tmp/topology.yml \
  -u $(id -u):$(id -g) \
  --name srlinux ghcr.io/nokia/srlinux \
  sudo bash /opt/srlinux/bin/sr_linux

The above command will start the container named srlinux on the host system with a single management interface attached to the default docker network. Note the necessity of an additional volume mount that we need to provide to select the desired emulated chassis type. It is driven via the topology.yml file that contains parameters specific to a given chassis/card. For the sake of this exercise, let's use IXR-D3L chassis that can be selected by providing the following topology.yml file to the command:

chassis_configuration:
  "chassis_type": 72
  "base_mac": "1a:b0:00:00:00:00"
  "cpm_card_type": 187

slot_configuration:
  1:
    "card_type": 187
    "mda_type": 200

This approach is viable when all you need is to run a standalone container to explore SR Linux CLI or to interrogate its management interfaces. But it is not particularly suitable to run multiple SR Linux containers with links between them, as this requires some extra work.

For multi-node SR Linux deployments containerlab offers a better way.

Containerlab

Containerlab provides a CLI for orchestrating and managing container-based networking labs. It starts the containers, builds a virtual wiring between them and manages labs lifecycle.

A quickstart guide is a perfect place to get started with containerlab.

What next?

Continue with learn.srlinux.dev documentation portal to learn more on how to connect to SR Linux over its different management interfaces.

On this page