netbootxyz / netboot.xyz

Your favorite operating systems in one place. A network-based bootable operating system installer based on iPXE.
https://netboot.xyz
Apache License 2.0
9.17k stars 680 forks source link

How to change the mirror base url in installing process? #598

Closed qibinghua closed 4 years ago

qibinghua commented 4 years ago

Beacuse the server is very slow to forigen network. it want to use myself mirror address.

thelamer commented 4 years ago

These can be altered if you are hosting locally via TFTP in the boot.cfg or you can build custom boot files using the ansible build process if you are hosting these via http/https. From a local small env standpoint the easiest way to do this is with the Linuxserver docker container, you can modify the boot.cfg via a web interface and mirror our assets locally with a download helper.

thelamer commented 4 years ago

See: https://netboot.xyz/selfhosting/ https://blog.linuxserver.io/2019/12/16/netboot-xyz-docker-network-boot-server-pxe/

lars18th commented 4 years ago

Hi,

I know about the Ansible build process for self hosting. However, I want a more simple approach with a MIRROR webserver. The idea is very simple: copy some assets from the github master repository and use them when selected from the menu.

So, why no add an entry in the stock on-line menu for an ALTERNATIVE ROOT ENDPOINT? Now, it's possible to select different branches in TOOLS->Utilities->netboot.xyz tools->netboot.xyz endpoints (with options like Production, Development, Staging, etc.). So why not add another entry to leave to the user the option to select any custom address? This can be a local webserver with some mirrored files from the github repository.

What you think?

thelamer commented 4 years ago

you set it in the boot.cfg :

# set location of custom netboot.xyz live assets
set live_endpoint https://github.com/netbootxyz

But you can also set it on a per file basis all the live-*.ipxe files if you want to have granular control.

The problem you run into is these are just text files, if the webapp nodejs application I wrote as a helper starts digging in and modifying entries based on selections the user has made to download our hosted assets you run the risk of overwriting their custom configuration options. It is also a bit of a maintenance nightmare.

In any case that would be a feature request for this application : (which is why I will be closing this issue) https://github.com/netbootxyz/webapp

As the sole developer of that application I can tell you I am not interested in automating edits to the ipxe or cfg files, the core design of the webapp ensures that no matter what direction the netboot.xyz project takes it will provide a web interface to tweak ipxe files easily, provide version management, and allow users to host github assets from a local webserver. The advantage of these simple functions is I do not need to babysit the project, it should do what it needs to do for years to come.