Skip to content

Release 0.48#

2023-11-13 ยท Full Changelog

Improvements to lab cloning#

In #1694 @steiler made the lab cloning process really smart. Containerlab will check if the repo already cloned and will not clone it again. Instead it will pull the latest changes from the repo and will change the branch if one was used in the URL.
Additionally, it is now also possible to copy the URL to a lab file that sits in a subdirectory of the repo. Containerlab will clone the repo and will then look for the lab file in the specified subdirectory.

Another improvement added in #1704 allows you to specify the GitHub URL in its shortest form - user/repo - and Containerlab will automatically expand it to the full URL and will clone the repo. This is a very convenient way to quickly deploy labs from GitHub, less typing, less errors, more fun!

Here is a rundown of the new ways you can deploy labs:

SSH key provisioning for Nokia SR OS#

Nokia SR OS users get to enjoy a feature that was previously available only for SR Linux - the auto-provisioning of public SSH keys to enable password-less access.

Containerlab retrieves public keys from local files at ~/.ssh as well as extracts them from the ssh-agent if it is running. The keys are then provisioned to the SR OS nodes once they are up and running enabling password-less access to the nodes.

Users will notice that with that change the lab deployment process will take a bit longer as Containerlab will wait for the SR OS nodes to boot up and will provision the keys before proceeding with the rest of the lab deployment.

Goodbye vr- prefix!#

For a very long time we used vr-<NOS> kind names to denote the VM-based lab nodes - a naming prefix adopted from vrnetlab project. After we introduced a common naming scheme for kind names <vendor>-<NOS> we decided to deprecate the old naming scheme and to remove the vr- prefix from the VM-based nodes.

Now vr-nokia_sros becomes nokia_sros, vr-juniper_vqfx becomes juniper_vqfx and so on. The old names with vr prefix are considered deprecated and will be removed later.

Directory ACLs#

Now containerlab will add group ACLs to the lab directory to allow original user to access the lab files without requiring sudo #1701.


  • Installer script now allows installing apk packages #1681
  • TLS verification is now skipped when containerlab downloads files from HTTPS locations to allow downloading from self-signed HTTPS servers #1693
  • Juniper vSRX lab example added in #1695
  • Containerlab now errors early if the link is missing the : separator #1691
  • Improvements to the devcontainer documentation #1689



  • Do not set unbound pubkey authentication option for older ssh clients #1721


  • fixing error handling during SR OS config push #1723
  • setting file ACLs for cloned repos #1720
  • SR OS ssh keys to start from index 32 downwards #1724
  • setting proper dir permissions for cloned repos #1726



  • fixed destroy --cleanup command not removing lab directory located outside of the current working dir #1738
  • fixed mgmt-net link provisioning #1741
  • fixed setting up unix socket access for gnmi/gnoi and SR Linux 23.10.1 #1740


  • fixed destroy -t <dir> case where topology file referred a directory #1747
  • fixed SR OS getting stuck when partial config is used with ssh keys provisioning #1750
  • introduced CLAB_SKIP_SROS_SSH_KEY_CONFIG env var to skip SSH key provisioning for SR OS #1756


  • added exit all command to SR OS config push to fix prompt handling #1757