summaryrefslogtreecommitdiffstats
path: root/makefu/2configs/mattermost-docker.nix
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2015-12-04 10:16:09 +0100
committermakefu <github@syntax-fehler.de>2015-12-04 10:16:09 +0100
commit65cc52e01e18c823016a3043b8cf41822934cc3c (patch)
tree58aa8971a4e571234a762eee20c7ec7f57a2b4d4 /makefu/2configs/mattermost-docker.nix
parent597f9e8597c95ac9e4cba1689322c433bb0c9a75 (diff)
parentb5ffb88ba3a77d4f399d7a2815e2c61d53545f5d (diff)
Merge branch 'master' of pnp:stockholm
Conflicts: makefu/1systems/gum.nix
Diffstat (limited to 'makefu/2configs/mattermost-docker.nix')
-rw-r--r--makefu/2configs/mattermost-docker.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/makefu/2configs/mattermost-docker.nix b/makefu/2configs/mattermost-docker.nix
new file mode 100644
index 000000000..20a93dff1
--- /dev/null
+++ b/makefu/2configs/mattermost-docker.nix
@@ -0,0 +1,47 @@
+{config, lib, ...}:
+
+with lib;
+let
+ sec = toString <secrets>;
+ ssl_cert = "${sec}/wildcard.krebsco.de.crt";
+ ssl_key = "${sec}/wildcard.krebsco.de.key";
+in {
+ # mattermost docker config and deployment guide: git.euer.krebsco.de
+ virtualisation.docker.enable = true;
+ users.extraUsers.${config.krebs.build.user.name}.extraGroups = [ "docker" ];
+ krebs.nginx = {
+ enable = true;
+ servers.mattermost = {
+ listen = [ "80" "443 ssl" ];
+ server-names = [ "mattermost.euer.krebsco.de" ];
+ extraConfig = ''
+ gzip on;
+ gzip_buffers 4 32k;
+ gzip_types text/plain application/x-javascript text/css;
+ ssl_certificate ${ssl_cert};
+ ssl_certificate_key ${ssl_key};
+ default_type text/plain;
+
+ if ($scheme = http){
+ return 301 https://$server_name$request_uri;
+ }
+
+ client_max_body_size 4G;
+ keepalive_timeout 10;
+
+ '';
+ locations = [
+ (nameValuePair "/" ''
+ proxy_http_version 1.1;
+ proxy_set_header Upgrade $http_upgrade;
+ proxy_set_header Connection "upgrade";
+ proxy_set_header Host $host;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_redirect off;
+ proxy_pass http://localhost:8065/;
+ '')
+ ];
+ };
+ };
+}