diff --git a/website/content/docs/v0.13/Cloud Platforms/nocloud.md b/website/content/docs/v0.13/Cloud Platforms/nocloud.md
index 0050e390b..f721f852d 100644
--- a/website/content/docs/v0.13/Cloud Platforms/nocloud.md
+++ b/website/content/docs/v0.13/Cloud Platforms/nocloud.md
@@ -3,4 +3,123 @@ title: "Nocloud"
description: "Creating a cluster via the CLI using qemu."
---
-Talos is known to work on nocloud; however, it is currently undocumented.
+Talos supports [nocloud](https://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html) data source implementation.
+
+There are two ways to configure Talos server with `nocloud` platform:
+
+* via SMBIOS "serial number" option
+* using CDROM or USB-flash filesystem
+
+### SMBIOS Serial Number
+
+This method requires the network connection to be up (e.g. via DHCP).
+Configuration is delivered from the HTTP server.
+
+```text
+ds=nocloud-net;s=http://10.10.0.1/configs/;h=HOSTNAME
+```
+
+After the network initialization is complete, Talos fetches:
+
+* the machine config from `http://10.10.0.1/configs/user-data`
+* the network config (if available) from `http://10.10.0.1/configs/network-config`
+
+#### SMBIOS: QEMU
+
+Add the following flag to `qemu` command line when starting a VM:
+
+```bash
+qemu-system-x86_64 \
+ ...\
+ -smbios type=1,serial=ds=nocloud-net;s=http://10.10.0.1/configs/
+```
+
+#### SMBIOS: Proxmox
+
+Set the source machine config through the serial number on Proxmox GUI.
+
+
+
+The Proxmox stores the VM config at `/etc/pve/qemu-server/$ID.conf` (```$ID``` - VM ID number of virtual machine), you will see something like:
+
+```conf
+...
+smbios1: uuid=ceae4d10,serial=ZHM9bm9jbG91ZC1uZXQ7cz1odHRwOi8vMTAuMTAuMC4xL2NvbmZpZ3Mv,base64=1
+...
+```
+
+Where serial holds the base64-encoded string version of `ds=nocloud-net;s=http://10.10.0.1/configs/`.
+
+### CDROM/USB
+
+Talos can also get machine config from local attached storage without any prior network connection being established.
+
+You can provide configs to the server via files on a VFAT or ISO9660 filesystem.
+The filesystem volume label must be ```cidata``` or ```CIDATA```.
+
+#### Example: QEMU
+
+Create and prepare Talos machine config:
+
+```bash
+export CONTROL_PLANE_IP=192.168.1.10
+
+talosctl gen config talos-nocloud https://$CONTROL_PLANE_IP:6443 --output-dir _out
+```
+
+Prepare cloud-init configs:
+
+```bash
+mkdir -p iso
+mv _out/controlplane.yaml iso/user-data
+echo "local-hostname: controlplane-1" > iso/meta-data
+cat > iso/network-config << EOF
+version: 1
+config:
+ - type: physical
+ name: eth0
+ mac_address: "52:54:00:12:34:00"
+ subnets:
+ - type: static
+ address: 192.168.1.10
+ netmask: 255.255.255.0
+ gateway: 192.168.1.254
+EOF
+```
+
+Create cloud-init iso image
+
+```bash
+cd iso && genisoimage -output cidata.iso -V cidata -r -J user-data meta-data network-config
+```
+
+Start the VM
+
+```bash
+qemu-system-x86_64 \
+ ...
+ -cdrom iso/cidata.iso \
+ ...
+```
+
+#### Example: Proxmox
+
+Proxmox can create cloud-init disk [for you](https://pve.proxmox.com/wiki/Cloud-Init_Support).
+Edit the cloud-init config information in Proxmox as follows, substitute your own information as necessary:
+
+
+
+and then update ```cicustom``` param at `/etc/pve/qemu-server/$ID.conf`.
+
+```config
+cicustom: user=local:snippets/master-1.yml
+ipconfig0: ip=192.168.1.10/24,gw=192.168.10.254
+nameserver: 1.1.1.1
+searchdomain: local
+```
+
+> Note: `snippets/master-1.yml` is Talos machine config.
+It is usually located at `/var/lib/vz/snippets/master-1.yml`.
+This file must be placed to this path manually, as Proxmox does not support snippet uploading via API/GUI.
+
+Click on `Regenerate Image` button after the above changes are made.
diff --git a/website/content/docs/v0.14/Cloud Platforms/nocloud.md b/website/content/docs/v0.14/Cloud Platforms/nocloud.md
index 0050e390b..f721f852d 100644
--- a/website/content/docs/v0.14/Cloud Platforms/nocloud.md
+++ b/website/content/docs/v0.14/Cloud Platforms/nocloud.md
@@ -3,4 +3,123 @@ title: "Nocloud"
description: "Creating a cluster via the CLI using qemu."
---
-Talos is known to work on nocloud; however, it is currently undocumented.
+Talos supports [nocloud](https://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html) data source implementation.
+
+There are two ways to configure Talos server with `nocloud` platform:
+
+* via SMBIOS "serial number" option
+* using CDROM or USB-flash filesystem
+
+### SMBIOS Serial Number
+
+This method requires the network connection to be up (e.g. via DHCP).
+Configuration is delivered from the HTTP server.
+
+```text
+ds=nocloud-net;s=http://10.10.0.1/configs/;h=HOSTNAME
+```
+
+After the network initialization is complete, Talos fetches:
+
+* the machine config from `http://10.10.0.1/configs/user-data`
+* the network config (if available) from `http://10.10.0.1/configs/network-config`
+
+#### SMBIOS: QEMU
+
+Add the following flag to `qemu` command line when starting a VM:
+
+```bash
+qemu-system-x86_64 \
+ ...\
+ -smbios type=1,serial=ds=nocloud-net;s=http://10.10.0.1/configs/
+```
+
+#### SMBIOS: Proxmox
+
+Set the source machine config through the serial number on Proxmox GUI.
+
+
+
+The Proxmox stores the VM config at `/etc/pve/qemu-server/$ID.conf` (```$ID``` - VM ID number of virtual machine), you will see something like:
+
+```conf
+...
+smbios1: uuid=ceae4d10,serial=ZHM9bm9jbG91ZC1uZXQ7cz1odHRwOi8vMTAuMTAuMC4xL2NvbmZpZ3Mv,base64=1
+...
+```
+
+Where serial holds the base64-encoded string version of `ds=nocloud-net;s=http://10.10.0.1/configs/`.
+
+### CDROM/USB
+
+Talos can also get machine config from local attached storage without any prior network connection being established.
+
+You can provide configs to the server via files on a VFAT or ISO9660 filesystem.
+The filesystem volume label must be ```cidata``` or ```CIDATA```.
+
+#### Example: QEMU
+
+Create and prepare Talos machine config:
+
+```bash
+export CONTROL_PLANE_IP=192.168.1.10
+
+talosctl gen config talos-nocloud https://$CONTROL_PLANE_IP:6443 --output-dir _out
+```
+
+Prepare cloud-init configs:
+
+```bash
+mkdir -p iso
+mv _out/controlplane.yaml iso/user-data
+echo "local-hostname: controlplane-1" > iso/meta-data
+cat > iso/network-config << EOF
+version: 1
+config:
+ - type: physical
+ name: eth0
+ mac_address: "52:54:00:12:34:00"
+ subnets:
+ - type: static
+ address: 192.168.1.10
+ netmask: 255.255.255.0
+ gateway: 192.168.1.254
+EOF
+```
+
+Create cloud-init iso image
+
+```bash
+cd iso && genisoimage -output cidata.iso -V cidata -r -J user-data meta-data network-config
+```
+
+Start the VM
+
+```bash
+qemu-system-x86_64 \
+ ...
+ -cdrom iso/cidata.iso \
+ ...
+```
+
+#### Example: Proxmox
+
+Proxmox can create cloud-init disk [for you](https://pve.proxmox.com/wiki/Cloud-Init_Support).
+Edit the cloud-init config information in Proxmox as follows, substitute your own information as necessary:
+
+
+
+and then update ```cicustom``` param at `/etc/pve/qemu-server/$ID.conf`.
+
+```config
+cicustom: user=local:snippets/master-1.yml
+ipconfig0: ip=192.168.1.10/24,gw=192.168.10.254
+nameserver: 1.1.1.1
+searchdomain: local
+```
+
+> Note: `snippets/master-1.yml` is Talos machine config.
+It is usually located at `/var/lib/vz/snippets/master-1.yml`.
+This file must be placed to this path manually, as Proxmox does not support snippet uploading via API/GUI.
+
+Click on `Regenerate Image` button after the above changes are made.
diff --git a/website/content/docs/v0.15/Cloud Platforms/nocloud.md b/website/content/docs/v0.15/Cloud Platforms/nocloud.md
index 0050e390b..f721f852d 100644
--- a/website/content/docs/v0.15/Cloud Platforms/nocloud.md
+++ b/website/content/docs/v0.15/Cloud Platforms/nocloud.md
@@ -3,4 +3,123 @@ title: "Nocloud"
description: "Creating a cluster via the CLI using qemu."
---
-Talos is known to work on nocloud; however, it is currently undocumented.
+Talos supports [nocloud](https://cloudinit.readthedocs.io/en/latest/topics/datasources/nocloud.html) data source implementation.
+
+There are two ways to configure Talos server with `nocloud` platform:
+
+* via SMBIOS "serial number" option
+* using CDROM or USB-flash filesystem
+
+### SMBIOS Serial Number
+
+This method requires the network connection to be up (e.g. via DHCP).
+Configuration is delivered from the HTTP server.
+
+```text
+ds=nocloud-net;s=http://10.10.0.1/configs/;h=HOSTNAME
+```
+
+After the network initialization is complete, Talos fetches:
+
+* the machine config from `http://10.10.0.1/configs/user-data`
+* the network config (if available) from `http://10.10.0.1/configs/network-config`
+
+#### SMBIOS: QEMU
+
+Add the following flag to `qemu` command line when starting a VM:
+
+```bash
+qemu-system-x86_64 \
+ ...\
+ -smbios type=1,serial=ds=nocloud-net;s=http://10.10.0.1/configs/
+```
+
+#### SMBIOS: Proxmox
+
+Set the source machine config through the serial number on Proxmox GUI.
+
+
+
+The Proxmox stores the VM config at `/etc/pve/qemu-server/$ID.conf` (```$ID``` - VM ID number of virtual machine), you will see something like:
+
+```conf
+...
+smbios1: uuid=ceae4d10,serial=ZHM9bm9jbG91ZC1uZXQ7cz1odHRwOi8vMTAuMTAuMC4xL2NvbmZpZ3Mv,base64=1
+...
+```
+
+Where serial holds the base64-encoded string version of `ds=nocloud-net;s=http://10.10.0.1/configs/`.
+
+### CDROM/USB
+
+Talos can also get machine config from local attached storage without any prior network connection being established.
+
+You can provide configs to the server via files on a VFAT or ISO9660 filesystem.
+The filesystem volume label must be ```cidata``` or ```CIDATA```.
+
+#### Example: QEMU
+
+Create and prepare Talos machine config:
+
+```bash
+export CONTROL_PLANE_IP=192.168.1.10
+
+talosctl gen config talos-nocloud https://$CONTROL_PLANE_IP:6443 --output-dir _out
+```
+
+Prepare cloud-init configs:
+
+```bash
+mkdir -p iso
+mv _out/controlplane.yaml iso/user-data
+echo "local-hostname: controlplane-1" > iso/meta-data
+cat > iso/network-config << EOF
+version: 1
+config:
+ - type: physical
+ name: eth0
+ mac_address: "52:54:00:12:34:00"
+ subnets:
+ - type: static
+ address: 192.168.1.10
+ netmask: 255.255.255.0
+ gateway: 192.168.1.254
+EOF
+```
+
+Create cloud-init iso image
+
+```bash
+cd iso && genisoimage -output cidata.iso -V cidata -r -J user-data meta-data network-config
+```
+
+Start the VM
+
+```bash
+qemu-system-x86_64 \
+ ...
+ -cdrom iso/cidata.iso \
+ ...
+```
+
+#### Example: Proxmox
+
+Proxmox can create cloud-init disk [for you](https://pve.proxmox.com/wiki/Cloud-Init_Support).
+Edit the cloud-init config information in Proxmox as follows, substitute your own information as necessary:
+
+
+
+and then update ```cicustom``` param at `/etc/pve/qemu-server/$ID.conf`.
+
+```config
+cicustom: user=local:snippets/master-1.yml
+ipconfig0: ip=192.168.1.10/24,gw=192.168.10.254
+nameserver: 1.1.1.1
+searchdomain: local
+```
+
+> Note: `snippets/master-1.yml` is Talos machine config.
+It is usually located at `/var/lib/vz/snippets/master-1.yml`.
+This file must be placed to this path manually, as Proxmox does not support snippet uploading via API/GUI.
+
+Click on `Regenerate Image` button after the above changes are made.
diff --git a/website/static/images/no-cloud/proxmox-cloudinit.png b/website/static/images/no-cloud/proxmox-cloudinit.png
new file mode 100644
index 000000000..517ed2177
Binary files /dev/null and b/website/static/images/no-cloud/proxmox-cloudinit.png differ
diff --git a/website/static/images/no-cloud/proxmox-smbios.png b/website/static/images/no-cloud/proxmox-smbios.png
new file mode 100644
index 000000000..aefc03b8e
Binary files /dev/null and b/website/static/images/no-cloud/proxmox-smbios.png differ