Jibri: shm 2gb (иначе не стартует); модуль отдаёт каталог записей uid 1000 (s6 в Jibri)
This commit is contained in:
@@ -42,6 +42,24 @@ var appStoreUrl = cfg["Calls:AppStoreUrl"] ?? "https://apps.apple.com/app/jitsi-
|
||||
var playStoreUrl = cfg["Calls:PlayStoreUrl"] ?? "https://play.google.com/store/apps/details?id=org.jitsi.meet";
|
||||
|
||||
app.Services.GetRequiredService<Db>().Init();
|
||||
// Общий каталог записей (bind с хоста) создаётся Docker под root, а Jibri пишет как s6 (uid 1000):
|
||||
// отдаём каталог ему; модуль работает от root и читает/удаляет файлы.
|
||||
{
|
||||
var rec = app.Services.GetRequiredService<RecordingOptions>();
|
||||
if (rec.Enabled && Directory.Exists(rec.RecordingsDir) && OperatingSystem.IsLinux())
|
||||
{
|
||||
try
|
||||
{
|
||||
var uid = cfg["RECORDINGS_UID"] ?? "1000";
|
||||
using var p = System.Diagnostics.Process.Start("chown", [$"{uid}:{uid}", rec.RecordingsDir]);
|
||||
p.WaitForExit(5000);
|
||||
File.SetUnixFileMode(rec.RecordingsDir, UnixFileMode.UserRead | UnixFileMode.UserWrite | UnixFileMode.UserExecute
|
||||
| UnixFileMode.GroupRead | UnixFileMode.GroupWrite | UnixFileMode.GroupExecute);
|
||||
app.Logger.LogInformation("Каталог записів {D}: власник {U}, код виходу chown {C}", rec.RecordingsDir, uid, p.ExitCode);
|
||||
}
|
||||
catch (Exception e) { app.Logger.LogWarning("Каталог записів {D}: не вдалося змінити власника: {E}", rec.RecordingsDir, e.Message); }
|
||||
}
|
||||
}
|
||||
var jitsi = app.Services.GetRequiredService<JitsiToken>(); // проверка секрета при старте
|
||||
app.Services.GetRequiredService<Store>(); // проверка Calls:LinkSecret при старте
|
||||
var meetOrigin = "https://" + jitsi.Domain;
|
||||
|
||||
Reference in New Issue
Block a user