# containerlab **Repository Path**: lhy1993917/containerlab ## Basic Information - **Project Name**: containerlab - **Description**: No description available - **Primary Language**: Unknown - **License**: BSD-3-Clause - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-23 - **Last Updated**: 2025-04-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
[](https://github.com/srl-labs/containerlab/releases/) [](https://github.com/srl-labs/containerlab/releases/) [](https://containerlab.dev) [](https://bsky.app/profile/containerlab.dev) [](https://discord.gg/vAyddtaEV9) --- With the growing number of containerized Network Operating Systems grows the demand to easily run them in the user-defined, versatile lab topologies. Unfortunately, container orchestration tools like docker-compose are not a good fit for that purpose, as they do not allow a user to easily create connections between the containers which define a topology. Containerlab provides a CLI for orchestrating and managing container-based networking labs. It starts the containers, builds a virtual wiring between them to create lab topologies of users choice and manages labs lifecycle.  Containerlab focuses on the containerized Network Operating Systems which are typically used to test network features and designs, such as: * [Nokia SR-Linux](https://containerlab.dev/manual/kinds/srl/) * [Arista cEOS](https://containerlab.dev/manual/kinds/ceos/) * [Cisco XRd](https://containerlab.dev/manual/kinds/xrd/) * [Azure SONiC](https://containerlab.dev/manual/kinds/sonic-vs/) * [Juniper cRPD](https://containerlab.dev/manual/kinds/crpd/) * [Cumulus VX](https://containerlab.dev/manual/kinds/cvx/) * [Keysight IXIA-C](https://containerlab.dev/manual/kinds/keysight_ixia-c-one/) * [RARE/FreeRtr](https://containerlab.dev/manual/kinds/rare-freertr/) * [Ostinato](https://containerlab.dev/manual/kinds/ostinato/) * [6WIND VSR](https://containerlab.dev/manual/kinds/6wind_vsr/) In addition to native containerized NOSes, containerlab can launch traditional virtual machine based routers using [vrnetlab or boxen integration](https://containerlab.dev/manual/vrnetlab/): * [Nokia virtual SR OS (vSim/VSR)](https://containerlab.dev/manual/kinds/vr-sros/) * [Juniper vMX](https://containerlab.dev/manual/kinds/vr-vmx/) * [Juniper vQFX](https://containerlab.dev/manual/kinds/vr-vqfx/) * [Juniper vSRX](https://containerlab.dev/manual/kinds/vr-vsrx/) * [Juniper vJunos-router](https://containerlab.dev/manual/kinds/vr-vjunosrouter/) * [Juniper vJunos-switch](https://containerlab.dev/manual/kinds/vr-vjunosswitch/) * [Juniper vJunosEvolved](https://containerlab.dev/manual/kinds/vr-vjunosevolved/) * [Cisco IOS XRv9k](https://containerlab.dev/manual/kinds/vr-xrv9k/) * [Cisco Nexus 9000v](https://containerlab.dev/manual/kinds/vr-n9kv) * [Cisco c8000v](https://containerlab.dev/manual/kinds/vr-c8000v/) * [Cisco CSR 1000v](https://containerlab.dev/manual/kinds/vr-csr) * [Dell FTOS10v](https://containerlab.dev/manual/kinds/vr-ftosv) * [Arista vEOS](https://containerlab.dev/manual/kinds/vr-veos) * [Palo Alto PAN](https://containerlab.dev/manual/kinds/vr-pan) * [IPInfusion OcNOS](https://containerlab.dev/manual/kinds/ipinfusion-ocnos) * [Check Point Cloudguard](https://containerlab.dev/manual/kinds/checkpoint_cloudguard/) * [Fortinet Fortigate](https://containerlab.dev/manual/kinds/fortinet_fortigate/) * [Aruba AOS-CX](https://containerlab.dev/manual/kinds/vr-aoscx) * [Huawei VRP](https://containerlab.dev/manual/kinds/huawei_vrp) * [OpenBSD](https://containerlab.dev/manual/kinds/openbsd) * [FreeBSD](https://containerlab.dev/manual/kinds/freebsd) And, of course, containerlab is perfectly capable of wiring up arbitrary linux containers which can host your network applications, virtual functions or simply be a test client. With all that, containerlab provides a single IaaC interface to manage labs which can span contain all the needed variants of nodes: