{ ... }: let gitlab_home = "/opt/gitlab"; hostname = "gitlab.orion-technologies.io"; in { virtualisation.oci-containers.containers.gitlab = { image = "gitlab/gitlab-ee:latest"; autoStart = true; ports = [ "127.0.0.1:8080:80" "2222:22" ]; volumes = [ "${gitlab_home}/config:/etc/gitlab" "${gitlab_home}/logs:/var/log/gitlab" "${gitlab_home}/data:/var/opt/gitlab" ]; extraOptions = [ "--shm-size=256m" "--hostname=${hostname}" ]; }; networking.firewall.allowedTCPPorts = [ 2222 ]; services.nginx.virtualHosts."${hostname}" = { locations."/".proxyPass = "http://127.0.0.1:8080"; forceSSL = true; enableACME = true; }; }