专家见解 最新讯息与新闻

即日起,您可以在 Gandi 云平台上使用 NixOS!

我们很高兴地向您们宣布,我们已将 NixOS 21.11 添加为 Gandi 云平台的新支援映像。也就是说,即日起,您可以使用 NixOS 佈署新的 Gandi 云平台伺服器!

什麽是 NixOS?

NixOS 是基于 Nix 包管理器所构建的 Linux 发行版。NixOS 使用声明式配置并允许可靠的系统更新。

只需在我们的网页介面上点击几下,或使用 OpenStack CLI 命令即可启动 NixOS 伺服器:

openstack server nixos-server --image NixOS \
    --flavor V-R2 \
    --boot-from-volume 20
 
Screen_EN_NixOS
我们在 Gandi 云平台上添加了 NixO 作为新的支援映像


想要试试看 NixOS 吗?

以下为 Gandi 云平台上启动 NixOS 伺服器的范例。

建立一个 Gandi 云平台 NixOS 伺服器,透过 SSH 连结并複製文件 /etc/gandi/configuration.nix dans /etc/nixos/gandicloud.nix:

cp /etc/gandi/configuration.nix /etc/nixos/gandicloud.nix

接着,您就能够根据您的具体需求去更新文件  /etc/nixos/configuration.nix。举例来说,添加一个 Nginx 配置以提供一个简单的网页。

文件 /etc/nixos/configuration.nix 现在应该会长这样:

 { pkgs, ... }: {
   imports = [ ./gandicloud.nix ];
   config = {
     services.nginx = {
       enable = true;
       virtualHosts = {
         "nixos.gandi.net" = {
           locations."/".root = pkgs.runCommand "web-root" {} ''
             mkdir $out
             echo 'NixOS @ gandi.net \o/' > $out/index.html
           '';
         };
       };
     };
     networking.firewall.allowedTCPPorts = [ 80 ];
   };
 }

然后使用 nixos-rebuild 工具部署此伺服器的设定:

$ nixos-rebuild switch
building Nix...
activating the configuration...
reloading the following units: dbus.service, firewall.service
the following new units were started: nginx.service

伺服器的设定已成功启用,Nginx 为我们的静态页面提供服务:

$ curl YOUR-GANDICLOUD-SERVER
NixOS @ gandi.net \o/

这只是一个基本范例,并且存在许多部署工具可以用来有效地部署 NixOS 伺服器。此外,得益于 OpenStack 公共 API,也可以使用 Terraform 创建 NixOS 伺服器在 Gandi 云平台上进行配置

感谢 NixOS 社群和声明式伺服器的良好部署!

本文根据国际知识共享许可协议 4.0 发佈。