nix-cluster/docs/create-a-website.md
2025-11-22 22:29:02 +01:00

3.3 KiB

Comment créer un site internet avec garage

Pour servir les sites statiques la filouterie utilise garage derrière Tricot. Voici les étapes à suivre pour se créer un site statique et y uploader des fichiers.

Tout d'abord connectez vous en SSH sur une des machines du cluster.

Ensuite pour faciliter les prochaines étapes faites un alias shell pour accéder à garage :

alias garage="docker exec -it <container_name> /garage"

Sachant que pour avoir le <container_name> utilisez la commande docker ps normalement il est sous la forme "server-62a435e6-dae0-e901-5c65-98e97c9d8c0e".

Maintenant que l'alias est fait vous pouvez créer un bucket avec le nom du site à créer. Ex :

garage bucket create test.chokbar.bzh

Si tout a fonctionné vous devriez avoir le texte suivant qui s'affiche :

[zuma@riri:~]$ garage bucket create test.chokbar.bzh
2025-11-22T21:18:18.979177Z  INFO garage_net::netapp: Connected to 10.0.2.1:3901, negotiating handshake...
2025-11-22T21:18:19.024546Z  INFO garage_net::netapp: Connection established to f1ef11406ffab64e
==== BUCKET INFORMATION ====
Bucket:          a944b080f4fdd8a7132b57bf12103b88ac914897008bd2040d7a59973cd6e3bd
Created:         2025-11-22 21:18:19.049 +00:00

Size:            0 B (0 B)
Objects:         0

Website access:  false

Global alias:    test.chokbar.bzh

==== KEYS FOR THIS BUCKET ====
Permissions  Access key    Local aliases

Attention il y'a une propriété à ajouter pour transformer ce bucket en site statique, afin d'éviter que n'importe qui puisse accéder à tous nos bucket gratos. Il faut passer le bucket en mode site web :

garage bucket website --allow test.chokbar.bzh

Okay maintenant plus qu'à envoyer des trucs dessus ! Mais heu comment on fait ? Il faut ajouter une clé pour pouvoir accéder à votre bucket !

Si vous n'en possédez pas vous pouvez en créer une comme ceci :

garage key create test-key

Cela devrait vous renvoyez ceci :

[zuma@riri:~]$ garage key create test-key
2025-11-22T21:22:12.412322Z  INFO garage_net::netapp: Connected to 10.0.2.1:3901, negotiating handshake...
2025-11-22T21:22:12.457657Z  INFO garage_net::netapp: Connection established to f1ef11406ffab64e
==== ACCESS KEY INFORMATION ====
Key ID:              GKf760bfb32e04251efc08d8bd
Key name:            test-key
Secret key:          dbd1d7d0c6a57b3c4fb00a4b298d5edf37fe5b36b9b3ab9bd518ad1507274da7
Created:             2025-11-22 21:22:12.458 +00:00
Validity:            valid
Expiration:          never

Can create buckets:  false

==== BUCKETS FOR THIS KEY ====
Permissions  ID  Global aliases  Local aliases

Notez bien le Key ID et le Secret key c'est ce qui vous permet d'administrer vos bucket ensuite !

Une fois que la clé est créée plus qu'à l'ajouter au bucket :

garage bucket allow --read --write --owner test.chokbar.bzh --key test-key

C'est tout configuré, plus qu'à uploader.

Vous pouvez quand même checker l'état du bucket avec :

garage bucket info test.chokbar.bzh

Maintenant si vous voulez uploader des fichiers vous pouvez utiliser n'importe quel outil qui fonctionne avec s3 (liste ici). En sachant que l'endpoint est https://garage.chokbar.bzh.