[GH-ISSUE #4] usage of local assets #1

Closed
opened 2026-02-27 14:47:24 +03:00 by kerem · 2 comments
Owner

Originally created by @yaurora on GitHub (Nov 20, 2021).
Original GitHub issue: https://github.com/netbootxyz/docker-netbootxyz/issues/4

I have hosted my own copy of netbookxyz via docker, and I downloaded some assets and want to boost network installation from those local resources.
For exmaple I downloaded Proxmox VE and modified proxmox.ipxe to use local resources by setting live_endpoint to my own server ip:

**set live_endpoint http://192.168.1.100:8080**

:boot
set kernel_url ${live_endpoint}/asset-mirror/releases/download/7.0-1-24e3084c/
imgfree
kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} initrd=initrd.magic ${cmdline}
initrd ${kernel_url}initrd
initrd ${kernel_url}proxmox.iso /proxmox.iso
boot

However, when i tried to boot the Proxmox installer it still tried to retrive all the resources from github.
So what's the correct approach to use local assets please?

Originally created by @yaurora on GitHub (Nov 20, 2021). Original GitHub issue: https://github.com/netbootxyz/docker-netbootxyz/issues/4 I have hosted my own copy of netbookxyz via docker, and I downloaded some assets and want to boost network installation from those local resources. For exmaple I downloaded Proxmox VE and modified proxmox.ipxe to use local resources by setting live_endpoint to my own server ip: ```shell **set live_endpoint http://192.168.1.100:8080** :boot set kernel_url ${live_endpoint}/asset-mirror/releases/download/7.0-1-24e3084c/ imgfree kernel ${kernel_url}vmlinuz vga=791 video=vesafb:ywrap,mtrr ramdisk_size=16777216 rw quiet ${params} initrd=initrd.magic ${cmdline} initrd ${kernel_url}initrd initrd ${kernel_url}proxmox.iso /proxmox.iso boot ```` However, when i tried to boot the Proxmox installer it still tried to retrive all the resources from github. So what's the correct approach to use local assets please?
kerem closed this issue 2026-02-27 14:47:24 +03:00
Author
Owner

@antonym commented on GitHub (Nov 22, 2021):

Modify boot.cfg and adjust the live_endpoint value:

set live_endpoint http://192.168.1.100:8080

You can drop into your iPXE shell and do a echo ${live_endpoint} to make sure you have the endpoint set. If it's not set, it may have fallen back to the hosted version if the locally version of the menu failed to boot.

<!-- gh-comment-id:974929533 --> @antonym commented on GitHub (Nov 22, 2021): Modify boot.cfg and adjust the live_endpoint value: set live_endpoint http://192.168.1.100:8080 You can drop into your iPXE shell and do a echo ${live_endpoint} to make sure you have the endpoint set. If it's not set, it may have fallen back to the hosted version if the locally version of the menu failed to boot.
Author
Owner

@east4ming commented on GitHub (Nov 9, 2024):

Modify boot.cfg and adjust the live_endpoint value:

set live_endpoint http://192.168.1.100:8080

You can drop into your iPXE shell and do a echo ${live_endpoint} to make sure you have the endpoint set. If it's not set, it may have fallen back to the hosted version if the locally version of the menu failed to boot.

I'm having the same problem. What do you mean "it may have fallen back to the hosted version if the locally version of the menu failed to boot."? How should I check my configuration and fix

Update:

I finally found the problem: there are 3 boot.cfg, the directories are.

  • . /boot.cfg
  • . /local/boot.cfg
  • . /remote/boot.cfg

I only changed the first two, when I changed the live_endpoint of all 3 boot.cfg, I can get the local assets correctly.

In view of this, I think it would be a good idea to specify here https://netboot.xyz/docs/docker#local-mirror-access the exact location of the boot.cfg that should be modified.

Update Again:

The above changes may or may not take effect. So it's not the reason mentioned above.

Eventually, I realized that it was the dhcp configuration, and I changed the dhcp configuration to the dhcp proxy method, and it worked fine. The configuration is as follows.

# Disable DNS Server.
port=0
# We're DHCP proxying on the network of the homelab host
dhcp-range=192.168.2.26,proxy
pxe-service=X86-64_EFI, "netbootxyz, (UEFI)", netboot.xyz.efi
# Log DHCP queries to stdout
log-queries
log-dhcp
log-facility=-

keep-in-foreground

user=nbxyz

# Enable TFTP server
enable-tftp
tftp-secure
tftp-root=/config/menus

supervisor.conf change:

command=/usr/sbin/dnsmasq -k

docker-compose change:

    # ports:
    #   - 3000:3000  # optional, destination should match ${WEB_APP_PORT} variable above.
    #   - 69:69/udp
    #   - 8080:80  # optional, destination should match ${NGINX_PORT} variable above.
    network_mode: host
    cap_add:
      - NET_ADMIN

Thank you.

<!-- gh-comment-id:2466146801 --> @east4ming commented on GitHub (Nov 9, 2024): > Modify boot.cfg and adjust the live_endpoint value: > > set live_endpoint http://192.168.1.100:8080 > > You can drop into your iPXE shell and do a echo ${live_endpoint} to make sure you have the endpoint set. If it's not set, it may have fallen back to the hosted version if the locally version of the menu failed to boot. I'm having the same problem. What do you mean "it may have fallen back to the hosted version if the locally version of the menu failed to boot."? How should I check my configuration and fix ### Update: I finally found the problem: there are 3 boot.cfg, the directories are. - . /boot.cfg - . /local/boot.cfg - . /remote/boot.cfg I only changed the first two, when I changed the live_endpoint of all 3 boot.cfg, I can get the local assets correctly. In view of this, I think it would be a good idea to specify here https://netboot.xyz/docs/docker#local-mirror-access the exact location of the boot.cfg that should be modified. ### Update Again: The above changes may or may not take effect. So it's not the reason mentioned above. Eventually, I realized that it was the dhcp configuration, and I changed the dhcp configuration to the dhcp proxy method, and it worked fine. The configuration is as follows. ```ini # Disable DNS Server. port=0 # We're DHCP proxying on the network of the homelab host dhcp-range=192.168.2.26,proxy pxe-service=X86-64_EFI, "netbootxyz, (UEFI)", netboot.xyz.efi # Log DHCP queries to stdout log-queries log-dhcp log-facility=- keep-in-foreground user=nbxyz # Enable TFTP server enable-tftp tftp-secure tftp-root=/config/menus ``` supervisor.conf change: ``` command=/usr/sbin/dnsmasq -k ``` docker-compose change: ```yaml # ports: # - 3000:3000 # optional, destination should match ${WEB_APP_PORT} variable above. # - 69:69/udp # - 8080:80 # optional, destination should match ${NGINX_PORT} variable above. network_mode: host cap_add: - NET_ADMIN ``` Thank you.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/docker-netbootxyz#1
No description provided.