feat(compute01): init pages server #151
No reviewers
Labels
No labels
awaiting
awaiting-author
awaiting
awaiting-reviewer
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: DGNum/infrastructure#151
Loading…
Reference in a new issue
No description provided.
Delete branch "init-dgnum-page"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
We have static pages at home
0216656911
to53ee0a569b
53ee0a569b
to69650d6540
@ -0,0 +1,90 @@
{
pkgs,
lib,
config,
@ -0,0 +21,4 @@
# Necessary until upstream cuts a new release because of
# https://codeberg.org/Codeberg/pages-server/issues/235
# that is fixed on main
package = pkgs.callPackage ./codeberg-pages-custom.nix { };
C'est pas faisable de juste override le paquet ? c.f. https://github.com/NixOS/nixpkgs/pull/225051
Je savais pas que ça avait été fix, will do
@ -0,0 +26,4 @@
{
age-secrets.autoMatch = [ "pages_env_file" ];
Ça ne fait pas ce que tu penses, ça associe à l'user
toto
tous les secrets de la formetoto-.*
@ -0,0 +31,4 @@
networking.firewall.allowedTCPPorts = [
80
443
];
C'est déjà ouvert, pas la peine de le redéclarer
@ -0,0 +37,4 @@
description = "Codeberg pages server";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
environment = settings;
Autant appeler directement la variable
environment
, comme ça tu peux faire un inherit et c'est plus clair dans le ``let ... in@ -0,0 +44,4 @@
EnvironmentFile = config.age.secrets."pages_env_file".path;
WorkingDirectory = "/var/lib/codeberg-pages";
DynamicUser = true;
ExecStart = "${package}/bin/pages";
getExe package
@ -0,0 +65,4 @@
};
services.nginx = {
enable = true;
nginx est déja activé
@ -0,0 +70,4 @@
map $ssl_preread_server_name $sni_upstream {
hostnames;
default 0.0.0.0:8010;
${lib.concatStringsSep "\n" (
concatMapStringsSep
existe ( https://noogle.dev/f/lib/concatMapStringsSep )@ -0,0 +71,4 @@
hostnames;
default 0.0.0.0:8010;
${lib.concatStringsSep "\n" (
map (vhost: " ${vhost} 0.0.0.0:8443;") (lib.attrNames config.services.nginx.virtualHosts)
127.0.0.1
plutôt que0.0.0.0
et il manque un:
entre l'ip et le port@ -0,0 +84,4 @@
'';
defaultSSLListenPort = 8443;
ligne vide en trop ?
@ -0,0 +86,4 @@
defaultSSLListenPort = 8443;
};
idem
@ -21,6 +21,7 @@
"outline-oidc_client_secret_file"
"outline-smtp_password_file"
"outline-storage_secret_key_file"
"pages_env_file"
pages-environment_file
plutôt69650d6540
tobb6bd21f94
bb6bd21f94
toaaa3f0346a
aaa3f0346a
to6711856bf9
6711856bf9
toa7bad89e3e
a7bad89e3e
tof0b577a5ca
f0b577a5ca
toa58ea0808f
@ -0,0 +48,4 @@
EnvironmentFile = config.age.secrets."pages-environment_file".path;
WorkingDirectory = "/var/lib/codeberg-pages";
DynamicUser = true;
ExecStart = "${lib.getExe package}";
C'est strictement égal à
lib.getExe package
a58ea0808f
to7d462e0924
7d462e0924
to2de3394bdb
2de3394bdb
to9eabab4e37
9eabab4e37
to407f99ca95
This is deployed now :)
@ -0,0 +71,4 @@
services.nginx = {
streamConfig = ''
map $ssl_preread_server_name $sni_upstream {
hostnames;
Je comprends pas très bien à quoi sert ce hostnames d'ailleurs sachant que c'est pas défini ailleurs
Je pense que tu as raison
le "hostnames" sert à pouvoir mettre des éléments du type *.dgnum.eu dans la map, effectivement plus utile ici
@ -0,0 +73,4 @@
map $ssl_preread_server_name $sni_upstream {
hostnames;
default 127.0.0.1:8010;
${lib.concatMapStringsSep "\n" (vhost: " ${vhost} 127.0.0.1:8446;") (
L'alignement est décalé de deux caractères sur la gauche
C'est pour avoir l'indentation correcte sur le fichier de config (regarde les deux espaces au début de chaque ligne).
Comme tu préfères
Ah, hmmm
Autre option, tu mets "\n " comme séparateur et pas les espaces dans la string du vhost
@thubrecht pourquoi tu as retiré le
defaultSSLListenPort = 8446;
?Parce que c'est plus utilisé lorsque
defaultListen
est renseigné avec une adresse qui écoute en sslView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.