{ pkgs, ... }: let tlaternet = import ../derivations/tlaternet { inherit pkgs; }; tlaternet-templates = import ../derivations/tlaternet-templates { inherit pkgs; }; in { networked-docker-containers = { web = { image = "tlaternet/web"; imageFile = pkgs.dockerTools.buildImage { name = "tlaternet/web"; tag = "latest"; contents = tlaternet; config = { Cmd = [ "${tlaternet}/bin/tlaternet" ]; Volumes = { "/srv/mail" = {}; }; Env = [ "ROCKET_PORT=80" "ROCKET_TEMPLATE_DIR=${tlaternet-templates}/srv/web" ]; ExposedPorts = { "80" = {}; }; }; }; volumes = [ "tlaternet-mail:/srv/mail" ]; environment = { VIRTUAL_HOST = "tlater.net,www.tlater.net"; LETSENCRYPT_HOST = "tlater.net,www.tlater.net"; }; networks = [ "webproxy" ]; extraDockerOptions = [ "--domainname=tlater.net" ]; }; }; }