diff options
author | lassulus <lassulus@lassul.us> | 2018-01-10 15:30:45 +0100 |
---|---|---|
committer | lassulus <lassulus@lassul.us> | 2018-01-10 15:30:45 +0100 |
commit | 42e1d088367412b3f2a340a242285c5734508735 (patch) | |
tree | 98b39d306d6ba825f03540a3f406374b4a5d769b /makefu/2configs/deployment/photostore.krebsco.de.nix | |
parent | 794e4fe21b9d0841f80ecab184716fbf88328aed (diff) | |
parent | cc51c5f7db21749b87b0db096087b7e7447a8f0a (diff) |
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'makefu/2configs/deployment/photostore.krebsco.de.nix')
-rw-r--r-- | makefu/2configs/deployment/photostore.krebsco.de.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/makefu/2configs/deployment/photostore.krebsco.de.nix b/makefu/2configs/deployment/photostore.krebsco.de.nix new file mode 100644 index 000000000..9e16a384a --- /dev/null +++ b/makefu/2configs/deployment/photostore.krebsco.de.nix @@ -0,0 +1,40 @@ +{ config, lib, pkgs, ... }: +# more than just nginx config but not enough to become a module +with import <stockholm/lib>; +let + wsgi-sock = "${workdir}/uwsgi-photostore.sock"; + workdir = config.services.uwsgi.runDir; +in { + + services.uwsgi = { + enable = true; + user = "nginx"; + runDir = "/var/lib/photostore"; + plugins = [ "python3" ]; + instance = { + type = "emperor"; + vassals = { + cameraupload-server = { + type = "normal"; + pythonPackages = self: with self; [ pkgs.cameraupload-server ]; + socket = wsgi-sock; + }; + }; + }; + }; + + services.nginx = { + enable = mkDefault true; + virtualHosts."photostore.krebsco.de" = { + locations = { + "/".extraConfig = '' + uwsgi_pass unix://${wsgi-sock}; + uwsgi_param UWSGI_CHDIR ${workdir}; + uwsgi_param UWSGI_MODULE cuserver.main; + uwsgi_param UWSGI_CALLABLE app; + include ${pkgs.nginx}/conf/uwsgi_params; + ''; + }; + }; + }; +} |