@@ -183,11 +183,71 @@ df -h
183183ps aux | grep polkadot
184184```
185185
186+ ## Building Images
187+
188+ This project can generate NixOS images for various platforms and cloud providers.
189+
190+ ### Available Images
191+
192+ #### Cloud Providers
193+ - ** Amazon EC2** (` ami ` ) - Amazon Machine Image with AWS hardware optimizations
194+ - ** Google Cloud** (` gce ` ) - Google Compute Engine image
195+ - ** Microsoft Azure** (` azure ` ) - Azure-compatible VHD
196+ - ** DigitalOcean** (` do ` ) - DigitalOcean droplet image
197+ - ** Linode** (` linode ` ) - Linode-compatible image
198+ - ** Oracle Cloud** (` oracle ` ) - Oracle Cloud Infrastructure image
199+
200+ #### Virtualization Platforms
201+ - ** QEMU/KVM** (` qcow2 ` ) - QCOW2 disk image for KVM/libvirt
202+ - ** Proxmox** (` proxmox ` ) - Proxmox VE compatible image (GRUB bootloader)
203+ - ** VMware** (` vmware ` ) - VMware ESXi/Workstation image
204+ - ** VirtualBox** (` virtualbox ` ) - VirtualBox OVA
205+ - ** Hyper-V** (` hyperv ` ) - Microsoft Hyper-V image
206+
207+ #### Containers
208+ - ** LXC** (` lxc ` ) - Linux Container image
209+
210+ ### Building an Image
211+
212+ To build any image, use:
213+
214+ ``` bash
215+ nix build .# <image-name>
216+ ```
217+
218+ Examples:
219+
220+ ``` bash
221+ # Build QCOW2 image for KVM
222+ nix build .# qcow2
223+
224+ # Build Proxmox image
225+ nix build .# proxmox
226+
227+ # Build Amazon EC2 AMI
228+ nix build .# ami
229+
230+ # Build DigitalOcean image
231+ nix build .# do
232+ ```
233+
234+ The built image will be available in ` ./result/ ` .
235+
236+ ### Image Configuration
237+
238+ All images include:
239+ - Polkadot validator (Paseo testnet)
240+ - SSH access with pre-configured key
241+ - SELinux enabled
242+ - srvos security hardening
243+
244+ Cloud images additionally disable ` sudo.execWheelOnly ` for compatibility with cloud-init.
245+
186246## Architecture
187247
188248- ** Cloud Provider** : Hetzner Cloud
189249- ** OS** : NixOS 24.11
190- - ** Bootloader** : systemd-boot
250+ - ** Bootloader** : systemd-boot (GRUB for Proxmox)
191251- ** Filesystem** : ext4
192252- ** Partitioning** :
193253 - ` /boot ` : 512MB (vfat)
0 commit comments