2021-04-12 01:42:46 +01:00
|
|
|
{ config, ... }:
|
|
|
|
|
|
|
|
{
|
|
|
|
virtualisation.pods.nextcloud = {
|
|
|
|
hostname = "nextcloud.tlater.net";
|
|
|
|
publish = [ "3001:80" ];
|
2021-05-16 00:40:09 +01:00
|
|
|
network = "slirp4netns";
|
2021-04-12 01:42:46 +01:00
|
|
|
|
|
|
|
containers = {
|
|
|
|
nextcloud = {
|
|
|
|
image = "nextcloud:fpm-alpine";
|
|
|
|
dependsOn = [ "postgres" ];
|
|
|
|
volumes = [
|
|
|
|
"nextcloud-apps:/var/www/html/custom_apps"
|
|
|
|
"nextcloud-config:/var/www/html/config"
|
|
|
|
"nextcloud-data:/var/www/html/data"
|
|
|
|
];
|
|
|
|
environment = {
|
|
|
|
POSTGRES_DB = "nextcloud";
|
|
|
|
POSTGRES_USER = "nextcloud";
|
|
|
|
POSTGRES_HOST = "nextcloud-postgres";
|
|
|
|
OVERWRITEPROTOCOL = "https";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
cron = {
|
|
|
|
image = "nextcloud:fpm-alpine";
|
|
|
|
entrypoint = "/cron.sh";
|
|
|
|
dependsOn = [ "postgres" "nextcloud" ];
|
|
|
|
extraOptions = [ "--volumes-from=nextcloud-nextcloud" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
nginx = {
|
|
|
|
image = "nginx:alpine";
|
|
|
|
dependsOn = [ "nextcloud" ];
|
|
|
|
volumes =
|
|
|
|
[ "${./configs/nginx-nextcloud.conf}:/etc/nginx/nginx.conf:ro" ];
|
|
|
|
extraOptions = [ "--volumes-from=nextcloud-nextcloud" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
postgres = {
|
|
|
|
image = "postgres:alpine";
|
|
|
|
environment = {
|
|
|
|
POSTGRES_DB = "nextcloud";
|
|
|
|
POSTGRES_USER = "nextcloud";
|
2021-06-10 23:39:42 +01:00
|
|
|
POSTGRES_HOST_AUTH_METHOD = "reject";
|
2021-04-12 01:42:46 +01:00
|
|
|
};
|
2021-04-17 22:12:41 +01:00
|
|
|
volumes = [ "nextcloud-db-data:/var/lib/postgresql/data" ];
|
2021-04-12 01:42:46 +01:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|