Initial commit: MKV → AVI web app (Docker + Keycloak OIDC)

- App FastAPI : recherche dans un dossier média, download original ou
  conversion en AVI Xvid (tone-mapping HDR→SDR, audio FR auto, MP3 stéréo)
- Auth Keycloak OIDC (Authlib) optionnelle
- 3 composes : app seule, stack local (keycloak.local), production (NPM)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-04 00:28:51 +02:00
commit fd2e0689bf
15 changed files with 1328 additions and 0 deletions
+44
View File
@@ -0,0 +1,44 @@
{
"realm": "mkv2avi",
"enabled": true,
"sslRequired": "none",
"registrationAllowed": false,
"loginTheme": "keycloak",
"clients": [
{
"clientId": "mkv2avi",
"name": "MKV → AVI",
"enabled": true,
"protocol": "openid-connect",
"publicClient": false,
"clientAuthenticatorType": "client-secret",
"secret": "mkv2avi-secret-change-me",
"standardFlowEnabled": true,
"directAccessGrantsEnabled": true,
"serviceAccountsEnabled": false,
"redirectUris": [
"http://localhost:8090/*",
"https://mkv2avi.maisongrondin.fr/*"
],
"webOrigins": ["+"],
"attributes": {
"post.logout.redirect.uris": "http://localhost:8090/*##https://mkv2avi.maisongrondin.fr/*"
},
"defaultClientScopes": ["web-origins", "profile", "roles", "email"],
"fullScopeAllowed": true
}
],
"users": [
{
"username": "alex",
"enabled": true,
"emailVerified": true,
"email": "alex@example.com",
"firstName": "Alex",
"lastName": "Grondin",
"credentials": [
{ "type": "password", "value": "alex", "temporary": false }
]
}
]
}