Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze | ||
| navody:vps:userdata [2025/03/14 20:31] – page id aither | navody:vps:userdata [2025/03/22 17:29] (aktuální) – aither | ||
|---|---|---|---|
| Řádek 3: | Řádek 3: | ||
| Při vytvoření nebo reinstalaci VPS může vpsAdmin do VPS nahrát skript nebo konfiguraci | Při vytvoření nebo reinstalaci VPS může vpsAdmin do VPS nahrát skript nebo konfiguraci | ||
| pro [[https:// | pro [[https:// | ||
| - | spuštění VPS. Podporujeme | + | spuštění VPS. Podporujeme |
| * [[# | * [[# | ||
| * [[# | * [[# | ||
| * [[# | * [[# | ||
| + | * [[# | ||
| + | * [[# | ||
| + | * [[# | ||
| Skripty a konfigurace je možné si do vpsAdminu uložit a při vytvoření/ | Skripty a konfigurace je možné si do vpsAdminu uložit a při vytvoření/ | ||
| Řádek 17: | Řádek 20: | ||
| Pro vývoj a testování je možné uloženou konfiguraci nahrát do VPS kdykoliv, | Pro vývoj a testování je možné uloženou konfiguraci nahrát do VPS kdykoliv, | ||
| **vpsAdmin** -> **VPS** -> **User data** -> Upravit položku ze seznamu a poté formulář **Deploy to VPS**. | **vpsAdmin** -> **VPS** -> **User data** -> Upravit položku ze seznamu a poté formulář **Deploy to VPS**. | ||
| + | Tato akce pouze zapíše skript/ | ||
| ===== Formáty konfigurace ===== | ===== Formáty konfigurace ===== | ||
| Řádek 76: | Řádek 80: | ||
| Výstup cloud-init je vidět v kernel logu a je uložen v souboru ''/ | Výstup cloud-init je vidět v kernel logu a je uložen v souboru ''/ | ||
| + | |||
| + | ==== NixOS configuration ==== | ||
| + | Vložená konfigurace se uloží do ''/ | ||
| + | a po startu VPS se provede '' | ||
| + | konfigurace musí importovat '' | ||
| + | |||
| + | Příklad konfigurace: | ||
| + | |||
| + | <code nix> | ||
| + | { config, pkgs, lib, ... }: | ||
| + | { | ||
| + | imports = [ | ||
| + | / | ||
| + | ]; | ||
| + | |||
| + | environment.systemPackages = with pkgs; [ | ||
| + | vim | ||
| + | ]; | ||
| + | |||
| + | services.openssh.enable = true; | ||
| + | services.openssh.settings.PermitRootLogin = " | ||
| + | # | ||
| + | # [ " | ||
| + | |||
| + | systemd.extraConfig = '' | ||
| + | DefaultTimeoutStartSec=900s | ||
| + | ''; | ||
| + | |||
| + | time.timeZone = " | ||
| + | |||
| + | system.stateVersion = " | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Výstup příkazu '' | ||
| + | |||
| + | ==== NixOS flake configuration ==== | ||
| + | Konfigurace se uloží do souboru ''/ | ||
| + | |||
| + | Příklad konfigurace: | ||
| + | |||
| + | <code nix> | ||
| + | { | ||
| + | inputs = { | ||
| + | nixpkgs.url = github: | ||
| + | vpsadminos.url = github: | ||
| + | }; | ||
| + | | ||
| + | outputs = { self, nixpkgs, vpsadminos }: { | ||
| + | # Zde musí být konfigurace s názvem " | ||
| + | nixosConfigurations.vps = nixpkgs.lib.nixosSystem { | ||
| + | modules = [ | ||
| + | ({ config, pkgs, lib, ... }: | ||
| + | { | ||
| + | imports = [ | ||
| + | vpsadminos.nixosConfigurations.container | ||
| + | ]; | ||
| + | |||
| + | environment.systemPackages = with pkgs; [ | ||
| + | vim | ||
| + | ]; | ||
| + | |||
| + | services.openssh.enable = true; | ||
| + | services.openssh.settings.PermitRootLogin = " | ||
| + | # | ||
| + | # [ " | ||
| + | |||
| + | systemd.extraConfig = '' | ||
| + | DefaultTimeoutStartSec=900s | ||
| + | ''; | ||
| + | |||
| + | time.timeZone = " | ||
| + | |||
| + | nixpkgs.hostPlatform = lib.mkDefault " | ||
| + | |||
| + | system.stateVersion = " | ||
| + | }) | ||
| + | ]; | ||
| + | }; | ||
| + | }; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Výstup příkazu '' | ||
| + | |||
| + | ==== NixOS flake URI ==== | ||
| + | Po startu VPS se spustí příkaz '' | ||
| + | jednoduše nasadit konfiguraci, | ||
| + | |||
| + | Ukázka použití: | ||
| + | |||
| + | <code nix> | ||
| + | github: | ||
| + | </ | ||
| + | |||
| + | Tuto konfiguraci najdete na https:// | ||
| + | |||
| + | Výstup příkazu '' | ||
| ===== Použítí s vpsfreectl ===== | ===== Použítí s vpsfreectl ===== | ||
| Řádek 107: | Řádek 209: | ||
| vpsfreectl vps reinstall 123 -- --user-data-format script --user-data-content @my-script.sh | vpsfreectl vps reinstall 123 -- --user-data-format script --user-data-content @my-script.sh | ||
| </ | </ | ||
| + | |||
| + | ===== Podporované distribuce ===== | ||
| + | |||
| + | Všechny kromě následujících výjimek: | ||
| + | |||
| + | * script není podporován na Guix, NixOS a Slackware | ||
| + | * cloud-init není podporován na Guix, NixOS, Slackware a Void Linuxu | ||