You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At this point restart your computer. After it has rebooted download the latest WSL2 kernel. [Download link](https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi).
68
+
At this point restart your computer. After it has rebooted download the latest
3. From the start menu you can launch the distribution from a new 'Containerlab' shortcut which has been added.
110
+
3. From the start menu you can launch the distribution from a new 'Containerlab'
111
+
shortcut which has been added.
105
112
106
113
or in PowerShell/cmd you can execute:
107
114
108
115
```powershell
109
116
wsl -d Containerlab
110
117
```
111
118
112
-
4. On first launch you will be presented with an interactive menu to select what shell and prompt you would like.
119
+
4. On first launch you will be presented with an interactive menu to select what
120
+
shell and prompt you would like.
113
121
114
-
This menu will give you options of `zsh`, `bash` (with a fancy two-line prompt) or `bash` with the default prompt.
122
+
This menu will give you options of `zsh`, `bash` (with a fancy two-line prompt)
123
+
or `bash` with the default prompt.
115
124
116
-
You will also be presented with the choice to have the Fira Code [nerd font](https://www.nerdfonts.com/font-downloads) automatically installed on your system.
117
-
**We recommend you install this font (especially if using `zsh` as your shell of choice)**.
125
+
You will also be presented with the choice to have the Fira Code
126
+
[nerd font](https://www.nerdfonts.com/font-downloads) automatically installed on
127
+
your system. **We recommend you install this font (especially if using `zsh` as
128
+
your shell of choice).**
118
129
119
-
Finally at the end SSH keys will be copied from your Windows host into Containerlab WSL to enable passwordless SSH. This is an integral step for [DevPod](#devpod) usage.
130
+
Finally at the end SSH keys will be copied from your Windows host into
131
+
Containerlab WSL to enable passwordless SSH. This is an integral step for
132
+
[DevPod](#devpod) usage.
120
133
121
-
If no SSH keys are found on your machine, an RSA keypair will be automatically generated.
134
+
If no SSH keys are found on your machine, an RSA keypair will be automatically
135
+
generated.
122
136
123
137
To run the setup again, execute `/etc/oobe.sh` inside Containerlab WSL.
124
138
@@ -146,18 +160,23 @@ Windows version: 10.0.19044.5131
146
160
> [!IMPORTANT]
147
161
> This feature is only supported on Windows 11.
148
162
149
-
You can run [vrnetlab (VM-based)](https://github.com/hellt/vrnetlab) nodes on top of WSL2 and use them in containerlab. Containerlab WSL is already configured so that nested virtualization is enabled on the distro side.
163
+
You can run [vrnetlab (VM-based)](https://github.com/hellt/vrnetlab) nodes on
164
+
top of WSL2 and use them in containerlab. Containerlab WSL is already configured
165
+
so that nested virtualization is enabled on the distro side.
150
166
151
-
To use vrnetlab nodes on Containerlab WSL you must <u>ensure that nested virtualization is enabled globally in WSL</u>.
167
+
To use vrnetlab nodes on Containerlab WSL you must <u>ensure that nested
168
+
virtualization is enabled globally in WSL</u>.
152
169
153
-
- You can do this by opening the *'WSL Settings'* app, going to the *'Optional features'* tab and ensuring *'Enable nested virtualization'* is enabled.
170
+
- You can do this by opening the *'WSL Settings'* app, going to the *'Optional
171
+
features'* tab and ensuring *'Enable nested virtualization'* is enabled.
154
172
155
173
> [!NOTE]
156
174
> You should be good to go if you don't get any errors during installation or
157
175
> distro bootup saying that *'Nested virtualization is not supported on this
158
176
> machine.'*
159
177
160
-
See the [containerlab user manual](https://containerlab.dev/manual/vrnetlab/) for more information about vrnetlab.
178
+
See the [containerlab user manual](https://containerlab.dev/manual/vrnetlab/)
179
+
for more information about vrnetlab.
161
180
162
181
# Performance Tuning
163
182
@@ -169,11 +188,14 @@ WSL2 runs as a VM. By default allocated resources are:
169
188
| RAM | 50% of system memory | If you have 32Gb of RAM on your system, WSL will allocate 16Gb to the WSL VM. |
170
189
| Disk | 1Tb | Regardless of disk size, the WSL VM will have a VHD with a maximum size of 1Tb. The disk is thin/sparse provisioned. |
171
190
172
-
Despite the fairly generous resource allocation by default. WSL2 will not use 100% of the assigned resources.
191
+
Despite the fairly generous resource allocation by default. WSL2 will not use
192
+
100% of the assigned resources.
173
193
174
194
# Docker Desktop
175
195
176
-
If you have Docker desktop installed. You **must** ensure the integration with the Containerlab WSL distro is disabled, otherwise Containerlab will not work inside Containerlab WSL.
196
+
If you have Docker desktop installed. You **must** ensure the integration with
197
+
the Containerlab WSL distro is disabled, otherwise Containerlab will not work
198
+
inside Containerlab WSL.
177
199
178
200
1. Open Docker Desktop window and go to settings (gear icon on the title bar)
179
201
1. Under the 'Resources tab, enter the 'WSL integration' page
@@ -183,38 +205,49 @@ If you have Docker desktop installed. You **must** ensure the integration with t
183
205
184
206
# DevPod
185
207
186
-
[DevPod](https://devpod.sh/) is an awesome tool which can let us easily run labs which take advantage of Devcontainers, which overall can give a 'one-click' lab experience. It's like running the codespaces labs but on your local machine.
208
+
[DevPod](https://devpod.sh/) is an awesome tool which can let us easily run labs
209
+
which take advantage of Devcontainers, which overall can give a 'one-click' lab
210
+
experience. It's like running the codespaces labs but on your local machine.
187
211
188
-
Check out [this video](https://www.youtube.com/watch?v=ceDrFx2K3jE) for more info.
212
+
Check out [this video](https://www.youtube.com/watch?v=ceDrFx2K3jE) for more
213
+
info.
189
214
190
-
Containerlab WSL was designed to support this lab experience out of the box. Just remember the following consideration:
215
+
Containerlab WSL was designed to support this lab experience out of the box.
216
+
Just remember the following consideration:
191
217
192
-
- When using DevPod, ensure Containerlab WSL is started (it does **not** automatically launch on Windows startup), you should leave the terminal window with Containerlab WSL open in the background.
218
+
- When using DevPod, ensure Containerlab WSL is started (it does **not**
219
+
automatically launch on Windows startup), you should leave the terminal window
220
+
with Containerlab WSL open in the background.
193
221
194
-
A one-time configuration step is required. You must setup a provider in DevPod. For Containerlab WSL, create the **SSH** provider with the following values:
222
+
A one-time configuration step is required. You must setup a provider in DevPod.
223
+
For Containerlab WSL, create the **SSH** provider with the following values:
195
224
196
225
| Field | Value |
197
226
|-------|------------------|
198
227
| Host | `clab@localhost` |
199
228
| Port | `2222` |
200
229
201
-
You can leave the other settings as the default values. See the screenshot below.
230
+
You can leave the other settings as the default values. See the screenshot
231
+
below.
202
232
203
-
After configuring the provider, you are done! You can now use one-click labs you see with the DevPod button, or configure the lab workspaces yourself.
233
+
After configuring the provider, you are done! You can now use one-click labs you
234
+
see with the DevPod button, or configure the lab workspaces yourself.
0 commit comments