Changes for page proxmox

Last modified by Kevin Wiki on 2026/05/18 15:44

From version 11.2
edited by Kevin Wiki
on 2026/05/18 15:38
Change comment: There is no comment for this version
To version 1.1
edited by Kevin Wiki
on 2024/02/17 18:20
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -2,267 +2,51 @@
2 2  (((
3 3  (% class="col-xs-12 col-sm-8" %)
4 4  (((
5 -{{children/}}
5 +(% class="jumbotron" %)
6 +(((
7 +(% class="container" %)
8 +(((
9 +
10 +)))
11 +)))
6 6  
13 += =
7 7  
8 -= Getting Started with Proxmox VE LXC and VM Templates =
15 += =
9 9  
10 -Proxmox VE (PVE) allows users to create and manage both LXC containers and KVM virtual machines (VMs). This guide walks you through the process of downloading, importing, and creating templates for both.
17 += Paragraph 1 =
11 11  
12 -== LXC Templates ==
19 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
13 13  
14 -LXC containers are lightweight and ideal for running Linux services with minimal overhead.
21 +== Sub-paragraph ==
15 15  
16 -=== List Available Templates ===
23 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
17 17  
18 -To view the available LXC templates:
25 +== Sub-paragraph ==
19 19  
20 -{{code language="bash"}}
21 -pveam list
22 -{{/code}}
27 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
23 23  
24 -=== Download Templates ===
29 +=== Sub-sub paragraph ===
25 25  
26 -Use the pveam download command to import templates to the local storage:
31 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
27 27  
28 -{{code language="bash"}}
29 -pveam download local ubuntu-22.04-standard_22.04-1_amd64.tar.gz
30 -pveam download local ubuntu-24.04-standard_24.04-1_amd64.tar.zst
31 -pveam download local debian-12-standard_11.7-1_amd64.tar.zst
32 -{{/code}}
33 33  
34 -Once downloaded, these templates can be used to create new LXC containers from the Proxmox web interface or via CLI.
34 += Paragraph 2 =
35 35  
36 -== VM Template from Ubuntu Cloud Image ==
36 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
37 37  
38 -KVM VMs are ideal when you need full virtualization, for instance, to run Windows or more complex Linux systems.
38 +== Sub-paragraph ==
39 39  
40 -=== Download Ubuntu Cloud Image ===
40 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
41 41  
42 -Download the official Ubuntu 24.04 cloud [[image:]]
42 +== Sub-paragraph ==
43 43  
44 -{{code language="bash"}}
45 -wget http://cloud-images.ubuntu.com/releases/24.04/release/ubuntu-24.04-server-cloudimg-amd64.img
46 -{{/code}}
44 +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
47 47  
48 -=== Create the Virtual Machine ===
46 += References =
49 49  
50 -Create a new VM with ID 910 (you can pick any unused ID):
51 -
52 -{{code language="bash"}}
53 -qm create 910 -name template-ubuntu-jammy -memory 2048 -net0 virtio,bridge=vmbr0 -cores 2 -sockets 1
54 -{{/code}}
55 -
56 -=== Import and Attach the Disk ===
57 -
58 -Choose the correct storage (replace nvme if you use a different storage name):
59 -
60 -{{code language="bash"}}
61 -qm importdisk 910 ubuntu-24.04-server-cloudimg-amd64.img nvme
62 -qm set 910 -scsihw virtio-scsi-pci -virtio0 nvme:vm-910-disk-0
63 -{{/code}}
64 -
65 -=== Configure the VM ===
66 -
67 -{{code language="bash"}}
68 -qm set 910 -serial0 socket
69 -qm set 910 -boot c -bootdisk virtio0
70 -qm set 910 -agent 1
71 -qm set 910 -hotplug disk,network,usb
72 -qm set 910 -vcpus 1
73 -qm set 910 -vga qxl
74 -qm set 910 -ide2 nvme:cloudinit
75 -qm resize 910 virtio0 +8G
76 -{{/code}}
77 -
78 -
79 -If your disk is using SCSI instead of virtio, resize like this:
80 -
81 -{{code language="bash"}}
82 -qm resize 910 scsi0 +8G
83 -{{/code}}
84 -
85 -=== Convert the VM into a Template ===
86 -
87 -{{code language="bash"}}
88 -qm template 910
89 -{{/code}}
90 -
91 -Now you can use this template to clone new VMs instantly.
92 -
93 -== Bash Script to Automate Setup ==
94 -
95 -Install the above using bash script below
96 -
97 -=== setup_proxmox_templates.sh ===
98 -
99 -{{code language="bash"}}
100 -#!/bin/bash
101 -
102 -# Exit on errors
103 -set -e
104 -
105 -echo "Downloading LXC templates..."
106 -pveam download nvme ubuntu-22.04-standard_22.04-1_amd64.tar.zst
107 -pveam download nvme ubuntu-24.04-standard_24.04-2_amd64.tar.zst
108 -pveam download nvme alpine-3.21-default_20241217_amd64.tar.xz
109 -pveam download nvme debian-12-standard_12.7-1_amd64.tar.zst
110 -
111 -echo "Downloading Ubuntu cloud image..."
112 -wget -N http://cloud-images.ubuntu.com/releases/24.04/release/ubuntu-24.04-server-cloudimg-amd64.img
113 -
114 -echo "Creating VM Template..."
115 -qm create 910 -name template-ubuntu-jammy -memory 2048 -net0 virtio,bridge=vmbr0 -cores 2 -sockets 1 && 1
116 -
117 -# qm importdisk 910 ubuntu-24.04-server-cloudimg-amd64.img nvme
118 -# qm set 910 -scsihw virtio-scsi-pci -scsi0-virtio0 nvme:910/vm-910-disk-0
119 -qm set 910 -scsihw virtio-scsi-pci -scsi0 nvme:0,import-from=/mnt/nvmestorage/template/iso/ubuntu-24.04-server-cloudimg-amd64.img
120 -
121 -qm set 910 -serial0 socket
122 -qm set 910 -boot c -bootdisk virtio0
123 -qm set 910 -agent 1
124 -qm set 910 -hotplug disk,network,usb
125 -qm set 910 -vcpus 1
126 -qm set 910 -vga qxl
127 -qm set 910 -ide2 nvme:cloudinit
128 -# qm resize 910 scsi0 +8G
129 -
130 -read -p "Confirm converting to template by pressing Enter"
131 -qm template 910
132 -
133 -echo "Templates setup complete."
134 -{{/code}}
135 -
136 -
137 -= VM runtime setup =
138 -
139 -After creating the VM and before making it into a template there are some programs and settings we want to ensure exists always.
140 -
141 -(% id="cke_bm_721114S" style="display:none" %)** **(%%)**clear bash history** to not leave any configuration in history, clear and disable history file before proceeding:
142 -
143 -**qemu-guest-agent** is for allowing proxmox to query information from the VM such as IP address, shutdown commands, etc
144 -
145 -{{code language="bash"}}
146 -sudo apt update
147 -sudo apt upgrade -y
148 -sudo apt install qemu-guest-agent -y
149 -
150 -sudo systemctl enable qemu-guest-agent.service
151 -sudo systemctl start qemu-guest-agent.service
152 -{{/code}}
153 -
154 -**reset machine-id** to not have overlapping ids from same template
155 -
156 -{{code language="bash"}}
157 -cat /dev/null > /etc/machine-id
158 -cat /dev/null > /var/lib/dbus/machine-id
159 -{{/code}}
160 -
161 -**cloud-init** is a great hook for installing or configuring programs or receiving variables from cloudinit CDROM drive. Making it easier to change IP, hostname, DNS, username/password, etc between VMs
162 -
163 -{{code language="bash"}}
164 -cloud-init clean
165 -{{/code}}
166 -
167 -This is a debian example of what we are looking for:
168 -
169 -{{code language="yaml"}}
170 -# The top level settings are used as module
171 -# and system configuration.
172 -# A set of users which may be applied and/or used by various modules
173 -# when a 'default' entry is found it will reference the 'default_user'
174 -# from the distro configuration specified below
175 -
176 -# If this is set, 'root' will not be able to ssh in and they
177 -# will get a message to login instead as the default $user
178 -disable_root: true
179 -
180 -# This will cause the set+update hostname module to not operate (if true)
181 -preserve_hostname: false
182 -
183 -apt:
184 - # This prevents cloud-init from rewriting apt's sources.list file,
185 - # which has been a source of surprise.
186 - preserve_sources_list: true
187 -
188 -# manually managed resolv
189 -manage_resolv_conf: false
190 -
191 -package_update: true
192 -packages:
193 - - qemu-guest-agent
194 -
195 -# The modules that run in the 'init' stage
196 -cloud_init_modules:
197 - - seed_random
198 - - bootcmd
199 - - write-files
200 - - growpart
201 - - resizefs
202 - - disk_setup
203 - - mounts
204 - - set_hostname
205 - - update_hostname
206 - - update_etc_hosts
207 - - ca-certs
208 - - rsyslog
209 - - users-groups
210 - - ssh
211 -
212 -# The modules that run in the 'config' stage
213 -cloud_config_modules:
214 - - keyboard
215 - - locale
216 - - set-passwords
217 - - grub-dpkg
218 - - apt-pipelining
219 - - apt-configure
220 - - ntp
221 - - timezone
222 - - disable-ec2-metadata
223 - - runcmd
224 -
225 -# The modules that run in the 'final' stage
226 -cloud_final_modules:
227 - - package-update-upgrade-install
228 - - write-files-deferred
229 - - scripts-vendor
230 - - scripts-per-once
231 - - scripts-per-boot
232 - - scripts-per-instance
233 - - scripts-user
234 - - ssh-authkey-fingerprints
235 -# - keys-to-console
236 - - install-hotplug
237 -# - phone-home
238 - - final-message
239 - - power-state-change
240 -
241 -runcmd:
242 - - systemctl enable qemu-guest-agent.service
243 -
244 -# System and/or distro specific settings
245 -# (not accessible to handlers/transforms)
246 -system_info:
247 - # This will affect which distro class gets used
248 - distro: debian
249 - # Other config here will be given to the distro class and/or path classes
250 - paths:
251 - cloud_dir: /var/lib/cloud/
252 - templates_dir: /etc/cloud/templates/
253 - package_mirrors:
254 - - arches: [default]
255 - failsafe:
256 - primary: https://deb.debian.org/debian
257 - security: https://deb.debian.org/debian-security
258 - ssh_svcname: ssh
259 -{{/code}}
260 -
261 -
262 -
263 -
264 -
265 -
48 +* [[XWiki>>http://www.xwiki.org]]
49 +* [[XWiki Extensions>>http://www.xwiki.org]]
266 266  )))
267 267  
268 268  (% class="col-xs-12 col-sm-4" %)
image.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.kevin
Size
... ... @@ -1,0 +1,1 @@
1 +40.8 KB
Content