CMG Linux is utilized as a DB VM as one of Nokia MAG-C VMs. The image of CMG Linux is released in qcow2 format. Since some of MAG-C tools in CMG Linux are written with systemd or systemctl utilization, then CMG Linux cannot be containerized because docker does not run systemd inside the container. Given this reasoning, the approach to containerized CMG Linux is to create a container to run a CMG Linux VM in the same way Vrnetlab has done.
Config Drive setup
Without config_drive binding
Initial config is carried out via cloud-init. By default CMG-Linux boots by using a pre-defined cloud-init config drive.
With config_drive binding
Custom configuration can be added by binding the local config_drive directory to /config_drive directory in the container.
The accepted structure of config_driveis shown below. Any other directories or files not specified below are ignored.
The internal launch.py script also modifies the content of user_data to add clabas default user with password clab@123. Moreover, it also modifies user_data to configure the management network interface.
Introduction
CMG Linux is utilized as a DB VM as one of Nokia MAG-C VMs. The image of CMG Linux is released in qcow2 format. Since some of MAG-C tools in CMG Linux are written with systemd or systemctl utilization, then CMG Linux cannot be containerized because docker does not run systemd inside the container. Given this reasoning, the approach to containerized CMG Linux is to create a container to run a CMG Linux VM in the same way Vrnetlab has done.
Config Drive setup
Without config_drive binding
Initial config is carried out via cloud-init. By default CMG-Linux boots by using a pre-defined cloud-init config drive.
With config_drive binding
Custom configuration can be added by binding the local
config_drive
directory to/config_drive
directory in the container. The accepted structure ofconfig_drive
is shown below. Any other directories or files not specified below are ignored.The internal
launch.py
script also modifies the content ofuser_data
to addclab
as default user with passwordclab@123
. Moreover, it also modifiesuser_data
to configure the management network interface.Example containerlab topology