nixos-module/server/lxc-containers: revert lxc to 4.0.6
This commit is contained in:
parent
5267e4ab32
commit
97bd7bc7d5
|
@ -1,6 +1,16 @@
|
||||||
{ hostName, self, config, lib, pkgs, ... }:
|
{ hostName, self, config, lib, pkgs, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
# Downgrade: lxc-4.0.9 names network interfaces in containers eth0,
|
||||||
|
# and eth1 despite configured differently.
|
||||||
|
lxc = pkgs.lxc.overrideAttrs (_: rec {
|
||||||
|
version = "4.0.6";
|
||||||
|
src = pkgs.fetchurl {
|
||||||
|
url = "https://linuxcontainers.org/downloads/lxc/lxc-${version}.tar.gz";
|
||||||
|
sha256 = "0qz4l7mlhq7hx53q606qgvkyzyr01glsw290v8ppzvxn1fydlrci";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
# Containers that are run on this host
|
# Containers that are run on this host
|
||||||
containers =
|
containers =
|
||||||
lib.filterAttrs (_: { role, model, location, ... }:
|
lib.filterAttrs (_: { role, model, location, ... }:
|
||||||
|
@ -134,7 +144,7 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.lxc build-script ];
|
environment.systemPackages = [ lxc build-script ];
|
||||||
|
|
||||||
# Create lxc.container.conf files
|
# Create lxc.container.conf files
|
||||||
environment.etc =
|
environment.etc =
|
||||||
|
@ -175,7 +185,7 @@ in
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
}) {
|
}) {
|
||||||
"lxc/common.conf".source = "${pkgs.lxc}/share/lxc/config/common.conf";
|
"lxc/common.conf".source = "${lxc}/share/lxc/config/common.conf";
|
||||||
} (builtins.attrNames containers);
|
} (builtins.attrNames containers);
|
||||||
|
|
||||||
# Systemd service template for LXC containers
|
# Systemd service template for LXC containers
|
||||||
|
@ -185,15 +195,15 @@ in
|
||||||
unitConfig.ConditionPathExists = "/var/lib/lxc/%i/rootfs/init";
|
unitConfig.ConditionPathExists = "/var/lib/lxc/%i/rootfs/init";
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
Type = "simple";
|
Type = "simple";
|
||||||
ExecStart = "${pkgs.lxc}/bin/lxc-start -F -C -n %i";
|
ExecStart = "${lxc}/bin/lxc-start -F -C -n %i";
|
||||||
ExecStop = "${pkgs.lxc}/bin/lxc-stop -n %i";
|
ExecStop = "${lxc}/bin/lxc-stop -n %i";
|
||||||
ExecReload =
|
ExecReload =
|
||||||
let
|
let
|
||||||
script = pkgs.writeScript "reload-lxc-container.sh" ''
|
script = pkgs.writeScript "reload-lxc-container.sh" ''
|
||||||
#! ${pkgs.runtimeShell} -e
|
#! ${pkgs.runtimeShell} -e
|
||||||
|
|
||||||
SYSTEM=$(dirname $(readlink /var/lib/lxc/$1/rootfs/init))
|
SYSTEM=$(dirname $(readlink /var/lib/lxc/$1/rootfs/init))
|
||||||
exec ${pkgs.lxc}/bin/lxc-attach -n $1 $SYSTEM/bin/switch-to-configuration switch
|
exec ${lxc}/bin/lxc-attach -n $1 $SYSTEM/bin/switch-to-configuration switch
|
||||||
'';
|
'';
|
||||||
in
|
in
|
||||||
"${script} %i";
|
"${script} %i";
|
||||||
|
|
Loading…
Reference in New Issue