Fully translated (but some work to do about urls)

This commit is contained in:
2025-07-04 12:54:44 +00:00
parent acdebcb682
commit e9ccda2e14
26 changed files with 1002 additions and 846 deletions

View File

@ -1,6 +1,6 @@
---
---
navigation: true
title: Code-Serveur
title: Code-Server
main:
fluid: false
---
@ -8,13 +8,13 @@ main:
# Code-Server
::alert{type="info"}
🎯 __Objectifs :__
- Installer code-server
- Monter des dossiers dans vscode
- Exposer code-server avec Swag
🎯 __Goals:__
- Install code-server
- Mount folders into VS Code
- Expose code-server with Swag
::
[code-server](https://github.com/linuxserver/docker-code-server) est un conteneur permettant d'accéder à [vscode](https://code.visualstudio.com/) en web-ui dans un environnement linux. C'est litralement vscode et vos projets directement dans votre poche, disponibles partout.
[code-server](https://github.com/linuxserver/docker-code-server) is a container that lets you access [VS Code](https://code.visualstudio.com/) via a web UI in a Linux environment. It's literally VS Code and your projects in your pocket, available anywhere.
![code-server](https://github.com/coder/code-server/raw/main/docs/assets/screenshot-2.png)
@ -22,21 +22,21 @@ main:
---
::alert{type="info"}
:::list{type="info"}
- Pour cette installation nous utiliserons [l'image maintenue par LinuxServer.io](https://docs.linuxserver.io/images/docker-code-server/).
- For this setup, well use the [image maintained by LinuxServer.io](https://docs.linuxserver.io/images/docker-code-server/).
:::
::
Structure des dossiers
Folder structure
```console
root
├── docker
│ └── code-server
│ └── config
└── #n'importe quel dossier à monter dans vscode
└── #any folder you want to mount in VS Code
```
Ouvrez Dockge, cliquez sur `compose`, appelez la stack `code-server` puis copiez collez ceci :
Open Dockge, click on `compose`, name the stack `code-server`, and paste the following:
```yaml
---
@ -51,15 +51,15 @@ services:
- HASHED_PASSWORD=${PW}
volumes:
- /docker/code-server/config:/config
# ajoutez vos dossier à monter dans vscode
# - /chemin/vers/dossier:/dossier
# add folders to mount in VS Code
# - /path/to/folder:/folder
ports:
- 8443:8443
restart: unless-stopped
```
::alert{type="success"}
✨ Ajoutez le label de watchtower dans chaque conteneur afin d'automatiser les mises à jour
✨ Add the Watchtower label to each container to automate updates
```yaml
services:
@ -69,19 +69,19 @@ services:
- com.centurylinklabs.watchtower.enable=true
::
Choisissez un mot de passe et générez un hash
Choose a password and generate its hash:
```shell
echo -n "votremotdepasse" | npx argon2-cli -e
echo -n "yourpassword" | npx argon2-cli -e
```
Notez précieusement le résultat. Trouvez votre PUID et votre GUID en tapant la commande suivante :
Save the result carefully. Find your PUID and GUID with:
```shell
id nomdutilisateur
id yourusername
```
Et renseignez le `.env` avec les infos que vous avez trouvées, par exemple :
Fill in the `.env` file with the values you found, for example:
```properties
PW='$argon2i$v=19$m=4096,t=3,p=1$wST5QhBgk2lu1ih4DMuxvg$LS1alrVdIWtvZHwnzCM1DUGg+5DTO3Dt1d5v9XtLws4'
@ -91,77 +91,78 @@ GUID=1000
::alert{type="warning"}
:::list{type="warning"}
- __Attention :__ Pensez à mettre un guillemet simple `'`au debut et à la fin du hash
- __Note:__ Make sure to wrap the hash in single quotes `'`
:::
::
Déployez le conteneur et rendez-vous sur `http://ipduserveur:8443`. Et voilà, votre instance code-server en webui est disponible !
Deploy the container and go to `http://yourserverip:8443`. Voilà, your code-server instance is up and running in the browser!
::alert{type="danger"}
:::list{type="danger"}
- __En cas d'échec :__ vérifiez les règles de votre pare-feu.
- __If it fails:__ check your firewall rules.
:::
::
## Monter des dossiers
## Mount Folders
---
Vous pouvez monter les dossiers à partager dans vscode en ajoutant les volumes concernés dans le compose.yaml (ou via dockge), et en redéployant le conteneur.
You can mount folders into VS Code by adding the relevant volumes in `compose.yaml` (or via Dockge), then redeploy the container.
```yaml
services:
code-server:
#...
volumes:
- /chemin/vers/dossier:/dossier
- /path/to/folder:/folder
```
Une fois dans vscode, vous pourrez accéder au dossier.
Once inside VS Code, you'll have access to the mounted folder.
## Exposer code-server avec Swag
## Expose code-server with Swag
---
Tout l'intérêt d'une telle solution, c'est de pouvoir y accéder à distance et sur tout vos appareils. Pour cela, nous allons exposer coder-server via Swag.
The whole point of such a solution is to access it remotely from any device. To do this, well expose code-server via Swag.
::alert{type="info"}
:::list{type="info"}
- __Au préalable :__ Nous partons du principe que vous avez créé dans votre [zone DNS](/generalites/dns) un sous domaine du type `code.mondomaine.fr` avec pour `CNAME` `mondomaine.fr` et [à moins que vous utilisiez Cloudflare Zero Trust](/serveex/securite/cloudflare), que que vous avez déjà redirigé le port `443` de votre box vers le `443` de votre serveur dans [les règles NAT](/generalites/nat).
- __Preliminary:__ We assume youve created a subdomain like `code.yourdomain.com` with a `CNAME` pointing to `yourdomain.com` in your [DNS zone](/generalites/dns), and—unless you're using [Cloudflare Zero Trust](/serveex/securite/cloudflare)—that youve forwarded port `443` from your router to port `443` on your server using [NAT rules](/generalites/nat).
:::
::
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de code-server :
In Dockge, go to the SWAG stack and edit the compose file to add code-servers network:
```yaml
services:
swag:
container_name: # ...
# ...
networks: # Relie le conteneur au réseau custom
networks: # Connects the container to a custom network
# ...
- code-server # Nom du réseau déclaré dans la stack
- code-server # Name of the network defined in the stack
networks: # Définit le réseau custom
networks: # Defines the custom network
# ...
code-server: # Nom du réseau déclaré dans la stack
name: code-serveur # Nom véritable du réseau externe
external: true # Précise que c'est un réseau à rechercher en externe
code-server: # Name of the network defined in the stack
name: code-serveur # Actual name of the external network
external: true # Indicates its an external network
```
::alert{type="info"}
:::list{type="info"}
- Ici nous partons du principe que le nom du réseau de code-server est `code-server_default`. Vous pouvez vérifier que la connexion est opérationnelle en visitant le dashboard de SWAG en tapant http://ipduserveur:81.
- We assume the network name is `code-server_default`. You can verify that the connection works by visiting the SWAG dashboard at http://yourserverip:81.
:::
::
Relancez la stack en cliquant sur "déployer" et patientez le temps que SWAG soit complètement opérationnel.
Redeploy the stack by clicking “deploy” and wait until SWAG is fully operational.
Dans les dossiers de Swag, créez le fichier `code.subdomain.conf`.
Inside the Swag config folders, create the file `code.subdomain.conf`.
::alert{type="success"}
✨ __Astuce :__ vous pouvez utiliser [File Browser](/serveex/files/file-browser) pour naviguer dans vos fichier et éditer vos documents au lieu d'utiliser les commandes du terminal.
✨ __Tip:__ You can use [File Browser](/serveex/files/file-browser) to navigate and edit your files instead of using terminal commands.
::
```shell
sudo vi /docker/swag/config/nginx/proxy-confs/code.subdomain.conf
```
Entrez en modification avec la touche `i` et collez la configuration ci-dessous :
Enter insert mode with `i` and paste the following configuration:
```nginx
## Version 2023/12/19
@ -209,15 +210,14 @@ server {
set $upstream_port 8443;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
}
}
```
Appuyez sur `Echap` puis sauvegardez et quittez en tapant `:x` puis en appuyant sur `Ente`.
Press `Esc`, then save and exit by typing `:x` and pressing `Enter`.
Et voilà, vous avez exposé code-server !
Thats it — code-server is now exposed!
::alert{type="success"}
✨ __Astuce :__ Vous pouvez protéger cette app avec Authentik en ouvrant `code.subodmain.conf` et en retirant les `#` devant `include /config/nginx/authentik-server.conf;`{lang=nginx} et `include /config/nginx/authentik-location.conf;`{lang=nginx}.N'oubliez pas de [créer une application et un fournisseur dans Authentik](/serveex/securite/authentik#protéger-une-app-par-reverse-proxy).
✨ __Tip:__ You can protect this app with Authentik by opening `code.subdomain.conf` and uncommenting the lines `include /config/nginx/authentik-server.conf;` and `include /config/nginx/authentik-location.conf;`. Dont forget to [create an application and provider in Authentik](/serveex/securite/authentik#protéger-une-app-par-reverse-proxy).
::

View File

@ -8,18 +8,18 @@ main:
# Gitea
::alert{type="info"}
🎯 __Objectifs :__
- Installer Gitea
- Exposer Gitea avec Swag
🎯 __Goals:__
- Install Gitea
- Expose Gitea using Swag
::
[Gitea](https://https://about.gitea.com/) est une plateforme DevOps, permettant de gérer des dépots, à la manière de GitHub mais chez vous en selfhost.
[Gitea](https://about.gitea.com/) is a self-hosted DevOps platform that allows you to manage repositories much like GitHub, but on your own infrastructure.
![gitea](https://about.gitea.com/img/home-screenshot.png)
## Installation
---
Structure des dossiers
Folder structure
```console
root
@ -28,7 +28,7 @@ root
└── data
```
Ouvrez Dockge, cliquez sur `compose`, appelez la stack `gitea` puis copiez collez ceci :
Open Dockge, click on `compose`, name the stack `gitea`, and paste the following content:
```yaml
---
@ -52,67 +52,68 @@ services:
- 3333:3000
- 222:22
```
Et renseignez le `.env` avec les infos que vous avez trouvées, par exemple :
Fill out the `.env` file with the required information, for example:
```properties
UID=1000
GID=1000
```
Déployez le conteneur et rendez-vous sur `http://ipduserveur:3333`. Et voilà, votre instance Gitea est disponible !
Deploy the container and go to `http://yourserverip:3333`. Your Gitea instance is now up and running!
::alert{type="danger"}
:::list{type="danger"}
- __En cas d'échec :__ vérifiez les règles de votre pare-feu.
- __If it fails:__ check your firewall rules.
:::
::
## Exposer Gitea avec Swag
## Exposing Gitea with Swag
---
Tout l'intérêt d'une telle solution, c'est de pouvoir y accéder à distance et sur tout vos appareils. Pour cela, nous allons exposer Gitea via Swag.
The benefit of this setup is being able to access it remotely from any of your devices. To do so, well expose Gitea through Swag.
::alert{type="info"}
:::list{type="info"}
- __Au préalable :__ nous partons du principe que vous avez créé dans votre [zone DNS](/generalites/dns) un sous domaine du type `gitea.mondomaine.fr` avec pour `CNAME` `mondomaine.fr` et, [à moins que vous utilisiez Cloudflare Zero Trust](/serveex/securite/cloudflare), que que vous avez déjà redirigé le port `443` de votre box vers le `443` de votre serveur dans [les règles NAT](/generalites/nat).
- __Prerequisite:__ We assume you have created a subdomain such as `gitea.yourdomain.com` in your [DNS zone](/generalites/dns) with `CNAME` pointing to `yourdomain.com`, and [unless you're using Cloudflare Zero Trust](/serveex/securite/cloudflare), you have already forwarded port `443` from your router to your servers port `443` in the [NAT rules](/generalites/nat).
:::
::
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de gitea :
In Dockge, go to the SWAG stack and edit the compose file by adding Gitea's network:
```yaml
services:
swag:
container_name: # ...
# ...
networks: # Relie le conteneur au réseau custom
networks: # Connect the container to the custom network
# ...
- gitea # Nom du réseau déclaré dans la stack
- gitea # Name of the declared network
networks: # Définit le réseau custom
networks: # Define the custom network
# ...
gitea: # Nom du réseau déclaré dans la stack
name: gitea_default # Nom véritable du réseau externe
external: true # Précise que c'est un réseau à rechercher en externe
gitea: # Name of the declared network
name: gitea_default # Actual external network name
external: true # Indicates it's an external network
```
::alert{type="info"}
:::list{type="info"}
- Ici nous partons du principe que le nom du réseau de gitea est `gitea_default`. Vous pouvez vérifier que la connexion est opérationnelle en visitant le dashboard de SWAG en tapant http://ipduserveur:81.
- We assume the Gitea network name is `gitea_default`. You can verify connectivity by visiting the SWAG dashboard at http://yourserverip:81.
:::
::
Relancez la stack en cliquant sur "déployer" et patientez le temps que SWAG soit complètement opérationnel.
Redeploy the stack by clicking "Deploy" and wait until SWAG is fully operational.
Dans les dossiers de Swag, créez le fichier `gitea.subdomain.conf`.
Inside the Swag folders, create the file `gitea.subdomain.conf`.
::alert{type="success"}
__Astuce :__ vous pouvez utiliser [File Browser](/serveex/files/file-browser) pour naviguer dans vos fichier et éditer vos documents au lieu d'utiliser les commandes du terminal.
__Tip:__ You can use [File Browser](/serveex/files/file-browser) to navigate and edit your files instead of using terminal commands.
::
```shell
sudo vi /docker/swag/config/nginx/proxy-confs/gitea.subdomain.conf
```
Entrez en modification avec la touche `i` et collez la configuration ci-dessous :
Press `i` to enter edit mode and paste the configuration below:
```nginx
## Version 2023/12/19
@ -148,7 +149,7 @@ server {
#include /config/nginx/authelia-location.conf;
# enable for Authentik (requires authentik-server.conf in the server block)
#include /config/nginx/authentik-location.conf;
#include /config/nginx/authentik-location.conf;
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
@ -171,28 +172,27 @@ server {
}
```
Appuyez sur `Echap` puis sauvegardez et quittez en tapant `:x` puis en appuyant sur `Ente`.
Press `Esc`, then save and exit by typing `:x` and hitting `Enter`.
Ouvrez le fichier `app.ini` dans les fichiers du conteneur
Now open the `app.ini` file from the container's file system:
```shell
sudo vi /docker/gitea/data/gitea/conf/app.ini
```
Entrez en modification avec la touche `i` et et modifiez la section serveur avec les infos de votre domaine
Press `i` to edit, then modify the server section with your domain information:
```properties
[server]
DOMAIN = gitea.mondomaine.fr
SSH_DOMAIN = gitea.mondomaine.fr
ROOT_URL = https://gitea.mondomaine.fr/
DOMAIN = gitea.yourdomain.com
SSH_DOMAIN = gitea.yourdomain.com
ROOT_URL = https://gitea.yourdomain.com/
```
Appuyez sur `Echap` puis sauvegardez et quittez en tapant `:x` puis en appuyant sur `Entrée`.
Relancez le conteneur.
Press `Esc`, save and exit with `:x`, then restart the container.
Et voilà, vous avez exposé Gitea !
And thats it! Gitea is now exposed to the web.
::alert{type="success"}
__Astuce :__ Vous pouvez protéger cette app avec Authentik de façon native en [suivant ces instructions](https://docs.goauthentik.io/integrations/services/gitea/).
::
__Tip:__ You can natively protect this app with Authentik by [following these instructions](https://docs.goauthentik.io/integrations/services/gitea/).
::

View File

@ -1,6 +1,6 @@
---
navigation: true
title: IT-Tools
title: IT Tools
main:
fluid: false
---
@ -8,19 +8,19 @@ main:
# IT Tools
::alert{type="info"}
🎯 __Objectifs :__
- Installer IT-Tools
- Exposer IT Tools avec Swag
🎯 __Goals:__
- Install IT Tools
- Expose IT Tools with Swag
::
[IT Tools](https://github.com/CorentinTh/it-tools) est un conteneur exposant une page web permettant d'accéder à un grand nombre d'outil de développement.
[IT Tools](https://github.com/CorentinTh/it-tools) is a container exposing a web page that provides access to a wide range of development tools.
![IT Tools](/img/serveex/it-tools.png)
## Installation
---
Ouvrez Dockge, cliquez sur `compose`, appelez la stack `it-tools` puis copiez collez ceci :
Open Dockge, click on `compose`, name the stack `it-tools`, and paste the following:
```yaml
---
@ -34,7 +34,7 @@ services:
```
::alert{type="success"}
__Astuce :__ ajoutez le label de watchtower dans chaque conteneur afin d'automatiser les mises à jour
__Tip:__ Add the Watchtower label to each container to enable automatic updates.
```yaml
services:
@ -44,68 +44,67 @@ services:
- com.centurylinklabs.watchtower.enable=true
::
Déployez le conteneur et rendez-vous sur `http://ipduserveur:3222`. Et voilà, votre instance IT Tools en webui est disponible !
Deploy the container and visit `http://yourserverip:3222`. Thats it, your IT Tools web UI instance is up and running!
::alert{type="danger"}
:::list{type="danger"}
- __En cas d'échec :__ vérifiez les règles de votre pare-feu.
- __If it fails:__ check your firewall rules.
:::
::
## Exposer IT Tools avec Swag
## Expose IT Tools with Swag
---
Vous aurez peut-etre envie d'y accéder à distance et sur tout vos appareils. Pour cela, nous allons exposer IT Tools via Swag.
You might want to access it remotely on all your devices. To do that, we'll expose IT Tools using Swag.
::alert{type="info"}
:::list{type="info"}
- __Au préalable :__ nous partons du principe que vous avez créé dans votre [zone DNS](/generalites/dns) un sous domaine du type `tools.mondomaine.fr` avec pour `CNAME` `mondomaine.fr` et, [à moins que vous utilisiez Cloudflare Zero Trust](/serveex/securite/cloudflare), que que vous avez déjà redirigé le port `443` de votre box vers le `443` de votre serveur dans [les règles NAT](/generalites/nat).
- __Pre-requisite:__ We assume youve created a subdomain like `tools.yourdomain.com` in your [DNS zone](/generalites/dns) with `CNAME` set to `yourdomain.com`. Also, unless youre using [Cloudflare Zero Trust](/serveex/securite/cloudflare), make sure youve already forwarded port `443` from your router to port `443` on your server in the [NAT rules](/generalites/nat).
:::
::
Dans Dockge, rendez-vous dans la stack de SWAG et éditez le compose en ajoutant le réseau de it-tools :
In Dockge, go to the SWAG stack and edit the compose file to add the IT Tools network:
```yaml
services:
swag:
container_name: # ...
# ...
networks: # Relie le conteneur au réseau custom
# ...
networks: # Connects the container to the custom network
# ...
- it-tools # Nom du réseau déclaré dans la stack
- it-tools # Network name as defined in the IT Tools stack
networks: # Définit le réseau custom
networks: # Defines the custom network
# ...
it-tools: # Nom du réseau déclaré dans la stack
name: it-tools_default # Nom véritable du réseau externe
external: true # Précise que c'est un réseau à rechercher en externe
it-tools: # Network name as defined in the IT Tools stack
name: it-tools_default # Actual name of the external network
external: true # Indicates it's an external network
```
::alert{type="info"}
:::list{type="info"}
- Ici nous partons du principe que le nom du réseau de it-tools est `it-tools_default`. Vous pouvez vérifier que la connexion est opérationnelle en visitant le dashboard de SWAG en tapant http://ipduserveur:81.
- We assume the IT Tools network is named `it-tools_default`. You can check connectivity by visiting the SWAG dashboard at http://yourserverip:81.
:::
::
::alert{type="info"}
:::list{type="info"}
- Ici nous partons du principe que le nom du réseau de Swag est `swag_default`.
- We also assume the SWAG network is named `swag_default`.
:::
::
Relancez la stack en cliquant sur "déployer" et patientez le temps que SWAG soit complètement opérationnel.
Restart the stack by clicking "deploy" and wait for SWAG to be fully operational.
Dans les dossiers de Swag, créez le fichier `tools.subdomain.conf`.
Inside the Swag folders, create the file `tools.subdomain.conf`.
::alert{type="success"}
✨ __Astuce :__ vous pouvez utiliser [File Browser](/serveex/files/file-browser) pour naviguer dans vos fichier et éditer vos documents au lieu d'utiliser les commandes du terminal.
✨ __Tip:__ You can use [File Browser](/serveex/files/file-browser) to navigate and edit your files instead of using terminal commands.
::
```shell
sudo vi /docker/swag/config/nginx/proxy-confs/tools.subdomain.conf
```
Entrez en modification avec la touche `i` et collez la configuration ci-dessous :
Enter edit mode by pressing `i` and paste the configuration below:
```nginx
## Version 2023/12/19
@ -158,10 +157,10 @@ server {
}
```
Appuyez sur `Echap` puis sauvegardez et quittez en tapant `:x` puis en appuyant sur `Ente`.
Press `Esc`, then save and exit by typing `:x` and pressing `Enter`.
Et voilà, vous avez exposé it-tools !
And thats it — IT Tools is now exposed!
::alert{type="success"}
✨ __Astuce :__ Vous pouvez protéger cette app avec Authentik en ouvrant `tools.subodmain.conf` et en retirant les `#` devant `include /config/nginx/authentik-server.conf;`{lang=nginx} et `include /config/nginx/authentik-location.conf;`{lang=nginx}. N'oubliez pas de [créer une application et un fournisseur dans Authentik](/serveex/securite/authentik#protéger-une-app-par-reverse-proxy).
✨ __Tip:__ You can secure this app with Authentik by opening `tools.subdomain.conf` and uncommenting the lines `include /config/nginx/authentik-server.conf;` and `include /config/nginx/authentik-location.conf;`. Dont forget to [create an application and a provider in Authentik](/serveex/securite/authentik#protéger-une-app-par-reverse-proxy).
::

View File

@ -1 +1 @@
navigation.title: Développement
navigation.title: Developpement