问题标签 [nixops]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
402 浏览

travis-ci - Travis-ci 何时会支持 NixOS/NixOps?

目前 travis 支持linux (ubuntu?) 和 mac

我目前正在探索nix。我认为这是声明系统全局状态的有效方式。它可用于各种级别:

在当前状态下,我可以在 linux vm 上安装 nix 包管理器并获取我需要的所有包,太棒了!

在我的理想世界中,我可以在机器或部署级别(机器[s])上做同样的事情。

所以我的问题是:travis-ci 什么时候会支持 NixOS?travis-ci 什么时候会支持多机设置(比如 NixOps)?

0 投票
1 回答
504 浏览

scala - 将 Scala 部署到 NixOps

我正在尝试在带有 NixOps 的 NixOS 下的 Scala 中部署带有 Play 2 Web 服务的 VirtualBox。

我有这台机器:

在这个逻辑网络上:

Backoffice.nix 是这个派生的:

VM 启动并正常部署。但是当我 ssh 进入它时,我在里面找不到我的 Backoffice 派生。

如果我在本地做

...它构建没有问题,我可以在我的开发机器上的 /nix/store 中找到派生。

在虚拟机中,有一个 /nix/store/shaXXX-backoffice.service,所以它有点工作。但由于后台派生不存在,它什么也不做。

有人可以告诉我我做错了什么吗?

0 投票
1 回答
246 浏览

nix - NixOps 部署机器的 nixos 选项?

有一个命令nixos-option检查给定系统的选项值。在引擎盖下它做了类似的事情:

但这不适用于 NixOps 部署的机器(那里没有配置)。有没有办法在部署机器上从 NixOps 部署配置中获取选项值?

0 投票
2 回答
16200 浏览

nix - 何时以及如何使用 default.nix、shell.nix 和 release.nix?

在学习如何使用 Nix 包管理器时遇到的第一种 Nix 表达式是default.nix;在精彩的 NixOS IRC 频道上,我了解到shell.nixand的存在release.nix

我的印象是 - 粗略地 -default.nix用于nix-build简单地构建包,shell.nix用于nix-shell创建与包的交互环境,并release.nix用于nixops部署包。

由于这可能不完整且部分不正确,并且似乎没有明确记录,因此我想对这些“标准文件”进行清晰准确的解释;特别是,对于这些文件类型中的每一个(以及我缺少的任何其他标准文件),我想知道:

  1. 这种文件的典型用例是什么?它们应该用于什么?
  2. 这种文件类型的结构通常如何?它的最低要求是什么?
  3. 您能否在其使用上下文中展示此类文件的范例示例,即使用说明并包括在 shell 或其他 Nix 表达式中使用它所需的代码行?

作为一个额外的奖励问题,我想知道在将软件包安装到 NixOS 模块时应该使用这些标准文件中的哪些(如果有的话)?那怎么做?

0 投票
1 回答
266 浏览

nixos - 在 nixos/nixops 上没有密码的登录 shell

我想要的是

我正在使用nixops部署到VirtualBoxlibvirtd(KVM)并且在这两个环境中,如果shell没有使用用户名/密码登录,我希望它已经提供了一个登录的shell。

  • 对于 libvirt,我们有:virsh console myfancydeploymentname
  • 对于 VirtualBox,我们有:图形界面或一些vboxmanage命令

资源

也许它只是这里的扩展:

https://nixos.org/nixos/options.html#logind

或者

https://nixos.org/nixos/options.html#tty

任何指针都会很可爱!

0 投票
1 回答
609 浏览

python - NixOps - 使用 Python Flask 配置 Nginx 代理通道

我是 Nix 的新手,并试图实现一个通过 Nginx 传递 Python Flask Web 服务的服务proxy_pass。这是我到目前为止所尝试的。

src/main.py是在端口 5000 上运行的 Python Flask 服务。当我这样做时,如何实现此 Web 服务并运行nixops deploy -d DEPLOYMENT_NAME?请帮忙。

0 投票
1 回答
922 浏览

nix - 如何导入 nixos 配置并将其与 nixops 部署表达式合并

我正在学习如何使用 Nix/NixOs/NixOps,但在重构简单的 NixOps 部署时遇到了麻烦。

我的出发点是这个工作vbox-all.nix文件:

运行nixops create ./vbox.nix -d mydeployment,然后nixops deploy -d mydeployment完美运行:我得到了一台运行并htop安装了 Postgres 9.6 的 VirtualBox 机器。

现在,将所有这些都放在一个文件中似乎不是长期维护的好主意。

这是我想我想要的文件布局:

这个想法是vbox-all.nix导入configuration-all.nix我可能想要的所有服务/包/配置(当前是 postgres 和 htop)。

这就是我无法上班的地方。

这是我的configuration-all.nix

这里是./postgres.nix

我想你可以猜到 的内容./htop.nix,反正也没关系。

最后,我的修改vbox-all.nix

当我重新运行时nixops deploy -d mydeployment,我没有收到任何错误,但生成的 VM 既没有 postgres 也没有 htop。

我必须从根本上误解要么withcallPackage。对我来说,它应该:执行./configuration-all.nix(自动填充所有参数)中定义的函数并将结果表达式与我的“特定于部署的配置”合并。

我尝试了一些方法,例如:替换pkgs.callPackageimport(仍然没有错误,但仍然不好),使用inherit (pkgs.callPackage ./configuration-all.nix { })而不是with,等等,但到目前为止还没有骰子。

我一定遗漏了一些小东西,而且可能很明显......

0 投票
2 回答
571 浏览

nix - 将 nixpkgs 结帐传播到 NixOps 机器

我在 上维护我的个人更改nixpkgs,我将其用于系统重建(通过 NixOps)和在我的工作站上进行开发(主要通过nix-shell)。更改是基于通道顶部的提交,nixos-17.09并存储在私有 git 服务器上。部署中的所有机器都对该 git 服务器具有读取权限。

在远程机器上使用nix-shell时,我会得到来自机器安装时间的旧包(在我的情况下nixos-17.03)。

nixpkgs有没有办法在远程机器上使用完全相同的版本进行部署?

0 投票
1 回答
737 浏览

nixos - 使用 NixOps 部署静态文件

我有一个程序,它依赖于服务器上可用的static和目录以及二进制文件。configNixOps 的默认构建阶段不包括这些文件,据我所知,它只是编译二进制文件,然后将二进制文件复制到服务器。

如何修改构建阶段以使staticconfig目录在服务器上可用?我尝试添加:

但这似乎并没有真正复制文件,而且我从来没有看到执行过的echo命令。是 NixOps 使用的配置文件的要点。服务器上的错误是:

0 投票
1 回答
501 浏览

nix - 将机密传递给 NixOps 逻辑网络规范

我正在使用 NixOps 将 Web 应用程序部署到 AWS。该应用程序需要设置一些环境变量。我可以通过类似于以下内容来实现这一点:

我希望将此文件签入我的源代码控制系统,但如果我能提供帮助,我不希望它SECRET_VALUE以明文形式存储。

当部署需要这些值时,有没有办法从 GPG 加密文件中读取这些值?还是有其他方法?还是我需要加密整个文件?