change podman config

This commit is contained in:
2023-12-01 10:56:35 +01:00
parent 7580f897c2
commit 3ebbe5d7d4
5 changed files with 48 additions and 31 deletions

View File

@@ -19,6 +19,7 @@
./modules/avahi.nix ./modules/avahi.nix
./modules/openconnect.nix ./modules/openconnect.nix
./modules/wireguard.nix ./modules/wireguard.nix
./modules/podman.nix
./modules/omada.nix ./modules/omada.nix
# git # git

View File

@@ -1,14 +1,6 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings.dns_enabled = true;
};
};
users.users.drone-runner = { users.users.drone-runner = {
isSystemUser = true; isSystemUser = true;
group = "drone-runner"; group = "drone-runner";

View File

@@ -1,14 +1,6 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings.dns_enabled = true;
};
};
users.users.drone-server = { users.users.drone-server = {
isSystemUser = true; isSystemUser = true;
group = "drone-server"; group = "drone-server";

View File

@@ -1,5 +1,4 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
users.users.omada = { users.users.omada = {
isSystemUser = true; isSystemUser = true;
@@ -10,20 +9,6 @@
users.groups.omada = { }; users.groups.omada = { };
users.groups.docker.members = [ "omada" ]; users.groups.docker.members = [ "omada" ];
virtualisation.podman.defaultNetwork.settings = {
cniVersion = "0.4.0";
name = "newnet";
plugins = [
{
type = "macvlan";
master = "server";
pam = {
type = "dhcp";
};
}
];
};
# TODO: check if we can run docker service as other user than root # TODO: check if we can run docker service as other user than root
virtualisation = { virtualisation = {
oci-containers.containers = { oci-containers.containers = {

View File

@@ -0,0 +1,47 @@
{ pkgs, ... }: {
virtualisation = {
podman = {
enable = true;
dockerCompat = true;
defaultNetwork.settings = {
cniVersion = "0.4.0";
name = "newnet";
plugins = [
{
type = "macvlan";
master = "server";
pam = {
type = "dhcp";
};
}
];
};
};
};
systemd.sockets."io.podman.dhcp" = {
description = "DHCP Client for CNI";
socketConfig = {
ListenStreams = "%t/cni/dhcp.sock";
SocketMode = 0600;
};
wantedBy = "sockets.target";
};
systemd.services."io.podman.dhcp" = {
description = "DHCP Client CNI Service";
after = [ "io.podman.dhcp.socket" ];
requires = [ "io.podman.dhcp.socket" ];
wantedBy = [ "multi-user.target" ];
also = "io.podman.dhcp.socket";
path = [ pkgs.cni-plugins ];
serviceConfig = {
Type = "simple";
ExecStart= "${pkgs.cni-plugins}/bin/dhcp daemon";
TimeoutStopSec = 30;
KillMode = "process";
};
};
}