diff --git a/examples/traefik/arion-compose.nix b/examples/traefik/arion-compose.nix new file mode 100644 index 0000000..03cacb6 --- /dev/null +++ b/examples/traefik/arion-compose.nix @@ -0,0 +1,28 @@ +{ pkgs, ... }: { + + config.services = { + traefik.service = { + image = "traefik:v2.4"; + container_name = "traefik"; + command = [ + "--api.insecure=true" + "--providers.docker=true" + "--providers.docker.exposedbydefault=false" + "--entrypoints.web.address=:80" + ]; + ports = [ "80:80" "8080:8080" ]; + volumes = [ "/var/run/docker.sock:/var/run/docker.sock:ro" ]; + }; + + whoami.service = { + image = "traefik/whoami"; + container_name = "simple-service"; + labels = { + "traefik.enable" = "true"; + "traefik.http.routers.whoami.rule" = "Host(`whoami.localhost`)"; + "traefik.http.routers.whoami.entrypoints" = "web"; + }; + }; + }; +} + diff --git a/examples/traefik/arion-pkgs.nix b/examples/traefik/arion-pkgs.nix new file mode 100644 index 0000000..69aad13 --- /dev/null +++ b/examples/traefik/arion-pkgs.nix @@ -0,0 +1,6 @@ +# Instead of pinning Nixpkgs, we can opt to use the one in NIX_PATH +import { + # We specify the architecture explicitly. Use a Linux remote builder when + # calling arion from other platforms. + system = "x86_64-linux"; +}