127 lines
2.8 KiB
Nix
Raw Normal View History

{
config,
lib,
pkgs,
...
}:
let
containers = {
archiveteam-imgur = {
image = "imgur-grab";
scale = 1;
};
#archiveteam-telegram = {
# image = "telegram-grab";
# scale = 3;
#};
#archiveteam-reddit = {
# image = "reddit-grab";
# scale = 1;
#};
#archiveteam-dpreview = {
# image = "dpreview-grab";
# scale = 0;
#};
#archiveteam-issuu = {
# image = "issuu-grab";
# scale = 0;
#};
#archiveteam-urls = {
# image = "urls-grab";
# scale = 2;
#};
#archiveteam-urlteam = {
# image = "terroroftinytown-client-grab";
# scale = 2;
#};
#archiveteam-mediafire = {
# image = "mediafire-grab";
# scale = 1;
#};
#archiveteam-github = {
# image = "github-grab";
# scale = 1;
#};
#archiveteam-lineblog = {
# image = "lineblog-grab";
# scale = 0;
#};
#archiveteam-banciyuan = {
# image = "banciyuan-grab";
# scale = 0;
#};
#archiveteam-wysp = {
# image = "wysp-grab";
# scale = 0;
#};
#archiveteam-xuite = {
# image = "xuite-grab";
# scale = 0;
#};
#archiveteam-gfycat = {
# image = "gfycat-grab";
# scale = 0;
#};
#archiveteam-skyblog = {
# image = "skyblog-grab";
# scale = 0;
#};
#archiveteam-zowa = {
# image = "zowa-grab";
# scale = 0;
#};
#archiveteam-blogger = {
# image = "blogger-grab";
# scale = 0;
#};
#archiveteam-vbox7 = {
# image = "vbox7-grab";
# scale = 0;
#};
#archiveteam-pastebin = {
# image = "pastebin-grab";
# scale = 1;
#};
#archiveteam-youtube = {
# image = "youtube-grab";
# scale = 1;
#};
#archiveteam-deviantart = {
# image = "deviantart-grab";
# scale = 1;
#};
#archiveteam-postnews = {
# image = "postnews-grab";
# scale = 1;
#};
};
container-spec = container: {
image = "atdr.meo.ws/archiveteam/${container}";
extraOptions = [ "--stop-signal=SIGINT" ];
labels = {
"com.centurylinklabs.watchtower.enable" = "true";
"com.centurylinklabs.watchtower.scope" = "archiveteam";
};
log-driver = "local";
cmd = lib.splitString " " "--concurrent 6 AmAnd0";
};
in
{
virtualisation.oci-containers.containers =
(lib.rad-dev.createTemplatedContainers containers container-spec)
// {
archiveteam-watchtower = {
image = "containrrr/watchtower:latest";
labels = {
"com.centurylinklabs.watchtower.enable" = "true";
"com.centurylinklabs.watchtower.scope" = "archiveteam";
};
volumes = [ "/var/run/docker.sock:/var/run/docker.sock" ];
log-driver = "local";
cmd = lib.splitString " " "--label-enable --cleanup --interval 600";
};
};
}