78 lines
2.1 KiB
Nix
78 lines
2.1 KiB
Nix
{
|
|
project.name = "wiki";
|
|
|
|
networks.dmz = {
|
|
name = "dmz";
|
|
external = true;
|
|
};
|
|
networks.internal = {};
|
|
|
|
services = {
|
|
outline.service = {
|
|
image = "docker.getoutline.com/outlinewiki/outline:0.77.2";
|
|
container_name = "outline";
|
|
labels = {
|
|
"traefik.enable" = "true";
|
|
|
|
"traefik.http.services.outline.loadbalancer.server.port" = "3000";
|
|
"traefik.http.routers.outline.service" = "outline";
|
|
"traefik.http.routers.outline.rule" = "Host(`wiki.ghoscht.com`)";
|
|
"traefik.http.routers.outline.entrypoints" = "websecure";
|
|
"traefik.http.routers.outline.tls" = "true";
|
|
"traefik.http.routers.outline.tls.certresolver" = "letsencrypt";
|
|
};
|
|
environment = {
|
|
NODE_ENV = "production";
|
|
|
|
PGSSLMODE = "disable";
|
|
REDIS_URL = "redis://redis:6379";
|
|
|
|
URL = "https://wiki.ghoscht.com";
|
|
PORT = 3000;
|
|
|
|
OIDC_AUTH_URI = "https://auth.ghoscht.com/application/o/authorize/";
|
|
OIDC_TOKEN_URI = "https://auth.ghoscht.com/application/o/token/";
|
|
OIDC_USERINFO_URI = "https://auth.ghoscht.com/application/o/userinfo/";
|
|
|
|
AWS_REGION = "local";
|
|
AWS_S3_UPLOAD_BUCKET_URL = "https://files.ghoscht.com";
|
|
AWS_S3_UPLOAD_BUCKET_NAME = "outline";
|
|
AWS_S3_UPLOAD_MAX_SIZE = 26214400;
|
|
AWS_S3_FORCE_PATH_STYLE = "true";
|
|
AWS_S3_ACL = "private";
|
|
};
|
|
env_file = [
|
|
"/home/ghoscht/.docker/wiki/outline.env"
|
|
];
|
|
restart = "always";
|
|
networks = [
|
|
"dmz"
|
|
"internal"
|
|
];
|
|
};
|
|
redis.service = {
|
|
image = "redis:7.2.4";
|
|
command = "--save 60 1 --loglevel warning";
|
|
restart = "always";
|
|
volumes = [
|
|
"/storage/dataset/docker/wiki/redis_data:/data"
|
|
];
|
|
networks = [
|
|
"internal"
|
|
];
|
|
};
|
|
postgres.service = {
|
|
image = "postgres:12.18";
|
|
restart = "always";
|
|
volumes = [
|
|
"/storage/dataset/docker/wiki/postgres_data:/var/lib/postgresql/data"
|
|
];
|
|
networks = [
|
|
"internal"
|
|
];
|
|
env_file = [
|
|
"/home/ghoscht/.docker/wiki/postgres.env"
|
|
];
|
|
};
|
|
};
|
|
}
|