« Le portail self-service » : différence entre les versions
Aller à la navigation
Aller à la recherche
→Dépendances : précisions sur les paquets à installer, et les commandes pour lancer le projet |
Aucun résumé des modifications |
||
| Ligne 73 : | Ligne 73 : | ||
server: | server: | ||
url: "" | url: "" | ||
# Certificate est | # Certificate est le certificat de l'interface web | ||
certificate: |- | certificate: |- | ||
target: incus | target: incus | ||
Version du 26 février 2025 à 12:38
L'idée derrière le portail self-service, est d'avoir une plateforme pour accéder à des machines préconfigurées pour des cours ou des expérimentations:
- La machine a une durée de vie définie à l'avance
- Il y a un contrôle de limite par adresse IP
- Basé sur des images créées localement
Projet d'origine
https://github.com/lxc/incus-demo-server
Le fork
https://github.com/yrougy/incus-demo
Usage
Pour le moment, sur la même machine que le serveur Incus.
Dépendances
https://go.dev/doc/install pour golang
apt install -y git build-essential screen git clone https://github.com/lxc/incus-demo-server cd incus-demo-server export CGO_ENABLED=1 # pour permettre l'intégration de C dans le projet GO go install github.com/lxc/incus-demo-server/cmd/incus-demo-server@latest
Construction
make
Configuration
server:
api:
address: "[::]:8080"
blocklist:
- 1.2.3.4
feedback:
enabled: false
timeout: 20
email:
smtp: SERVER:PORT
from: ADDRESS
to: ADDRESS
subject: User feedback from try-it
limits: # 64 machines au total, chaque IP peut en demander 10
total: 64
ip: 10
maintenance:
enabled: false
message: Custom downtime message
proxy:
address: ""
certificate: |-
key: |-
PEM
statistics:
keys:
- 69280011-c8a5-4ef9-ae3d-e7caf4d06e06
terms: |-
ToS<br />
<ul>
<li>Access to this service may be revoked at any time for any reason</li>
<li>Access to this service is solely provided to test</li>
<li>Your IP address, access time and activity on the test server may be recorded</li>
<li>Any abuse of this service may lead to a ban or other applicable actions</li>
</ul>
incus:
# certificate est la clé publique du certificat d'authentification
# key est la clé privée du certificat d'authentification
# on peut la faire avec openssl pkcs12 -in incus-ui.pfx -out incus-ui.pem -nodes
# et ça sera dans le incus-ui.pem
client:
certificate: |-
key: |-
project: default
server:
url: ""
# Certificate est le certificat de l'interface web
certificate: |-
target: incus
instance:
allocate:
count: 4
expiry: 21600
source: instance: "self1" #nom de l'image créée type: "container" #ou "virtual-machine"
profiles: - default #Profil Incus à utiliser
limits: cpu: 1 disk: 10GiB processes: 200 memory: 512MiB
session: command: ["bash"] expiry: 900 console_only: false network: ipv6
Appel
~/go/bin/incus-demo-server