Automatic install post procedures

RazZinger

New Member
Dec 3, 2025
4
0
1
Hi,
Proxmox VE version: 8.4.1
Im creating custom.iso with answer.toml as following:
===
[global]
keyboard = "en-us"
country = "us"
fqdn = "{{MACHINE_NAME}}.proxmox.local"
mailto = "{{MAIL_TO}}"
timezone = "UTC"
root-password = "{{ROOT_PW}}"

[network]
source = "from-answer"
cidr = "{{IP}}"
gateway = "{{GATEWAY}}"
dns = "{{DNS}}"
filter.ID_NET_NAME = "ens2f0np0"

[disk-setup]
filesystem = "ext4"
disk-list = ["nvme0n1"]
===

How can I execute automatic post install procedure to update /etc/network/interfaces file with VLAN's and Bridges
Until interfaces configured, dont have ssh access, only iLO access
 
It's in the linked documentation:

When using from-iso, the executable must be specified when preparing the ISO using proxmox-auto-install-assistant prepare-iso --on-first-boot path/to/file.sh

Where the script (as given in the example as path/to/file.sh can be a arbitrary executable (don't forget the shebang for scripts!).
This will then be run on boot (according to the ordering specified) as root, meaning you can then in it e.g. create a new file under /etc/network/interfaces.d, whatever you need.
 
It's in the linked documentation:



Where the script (as given in the example as path/to/file.sh can be a arbitrary executable (don't forget the shebang for scripts!).
This will then be run on boot (according to the ordering specified) as root, meaning you can then in it e.g. create a new file under /etc/network/interfaces.d, whatever you need.
Probably I'm missing something, please take a look
answer.toml
.
.
[first-boot]
source = "from-iso"
ordering = "fully-up"
====
Dockerfile to create custom.iso
.
.
RUN rm -rf /etc/apt/sources.list.d/* && \
rm -rf /etc/apt/sources.list && \
apt -o "Acquire::https::Verify-Peer=false" update && \
apt -o "Acquire::https::Verify-Peer=false" install -y \
xorriso \
proxmox-auto-install-assistant=8.4.0 \
wget \
vim

COPY iso-custom/interfaces.final /firstboot/interfaces.final
COPY iso-custom/firstboot.sh /firstboot/firstboot.sh

# Make script executable
RUN chmod +x /firstboot/firstboot.sh

HEALTHCHECK NONE

ENTRYPOINT ["/usr/bin/proxmox-auto-install-assistant"]
=====
firstboot.sh:
#!/bin/bash
set -e
LOG="/firstboot/firstboot-network.log"

cp /firstboot/interfaces.final /etc/network/interfaces
chmod 644 /etc/network/interfaces
echo "Interfaces file copied to /etc/network/interfaces" >> "$LOG"

# Restart networking
ifdown -a || true
ifup -a || true
echo "Networking restarted" >> "$LOG"
echo "DONE: $(date)" >> "$LOG"

sudo docker run --rm \
-v "${base_path}/${original_iso}:/input.iso:ro" \
-v "${output_folder}/${answer_file}:/answer.toml:ro" \
-v "${output_folder}:/output" \
-v "${base_path}/docker/iso-custom:/firstboot:ro" \
proxmox-iso-editor:8.4.0 \
prepare-iso /input.iso \
--fetch-from iso \
--answer-file /answer.toml \
--on-first-boot /firstboot/firstboot.sh \
--output /output/${output_iso}-${i}.iso
 
Last edited:
Probably I'm missing something, please take a look
Do you experience any actual problem? You don't mention anything ..

proxmox-auto-install-assistant=8.4.0
Please note that this version is long outdated. First of, please use an up-to-date version, i.e. 9.1.3 is the current available version.
 
Do you experience any actual problem? You don't mention anything ..


Please note that this version is long outdated. First of, please use an up-to-date version, i.e. 9.1.3 is the current available version.
/firstboot folder not exist after auto installation done
interface file not replaced