首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NixOS在NixOS?

NixOS在NixOS?
EN

Stack Overflow用户
提问于 2018-12-03 19:03:45
回答 2查看 1.5K关注 0票数 8

我开始玩NixOS部署了。为此,我有一个带有定义了一些包的repo,以及一个服务器的configuration.nix

这样看来,我应该能够在本地测试这个配置(我还在运行NixOS)。我认为将全局configuration.nix更改为指向部署服务器的configuration.nix是个坏主意(谁知道这会破坏什么);但是是否有一种安全方便的方法在本地“试用”服务器--即构建它并引导它,或者更好地将它作为一个单独的进程启动?

当然,我可以看到码头是一种方式,也许没有别的东西了。但我有一种模糊的感觉,尼克斯有能力独自做这件事。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-04 18:12:29

有一种相当标准的方法可以实现这一点,这是内置在默认系统中的。

nixos-rebuild build-vm.这将获取当前的配置文件(默认情况下是/etc/nixos/ configuration .nixos),构建它并创建一个脚本,允许您将配置引导到虚拟机器中。

脚本完成后,它将在当前目录中留下一个符号链接。然后,您可以通过运行./result/bin/run-$HOSTNAME-vm来引导,这将启动您的虚拟机器的启动,供您使用。

TLDR;

  1. nixos-rebuild build-vm
  2. ./result/bin/run-$HOSTNAME-vm
票数 12
EN

Stack Overflow用户

发布于 2019-02-25 17:53:04

然而,nixos-rebuild build-vm是最简单的方法;您也可以将配置导入到NixOS容器中(参见NixOS手册nixos-container命令中的第47章。集装箱管理 )。

这样做的方法如下:

代码语言:javascript
复制
containers.mydeploy = {
  privateNetwork = true;
  config = import ../mydeploy-configuration.nix;
};

请注意,如果网络配置是静态的,则而不是希望在mydeploy-configuration.nix中指定网络配置,因为这可能会导致与为容器创建的网络子网发生冲突。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53600226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档