diff --git a/internal/room/labels.go b/internal/room/labels.go index ae5b0c5..25e2abb 100644 --- a/internal/room/labels.go +++ b/internal/room/labels.go @@ -29,7 +29,7 @@ func (manager *RoomManagerCtx) extractLabels(labels map[string]string) (*RoomLab url, ok := labels["m1k1o.neko_rooms.url"] if !ok { - return nil, fmt.Errorf("damaged container labels: url not found") + url = manager.config.GetRoomUrl(name) } nekoImage, ok := labels["m1k1o.neko_rooms.neko_image"] @@ -90,13 +90,17 @@ func (manager *RoomManagerCtx) extractLabels(labels map[string]string) (*RoomLab func (manager *RoomManagerCtx) serializeLabels(labels RoomLabels) map[string]string { labelsMap := map[string]string{ "m1k1o.neko_rooms.name": labels.Name, - "m1k1o.neko_rooms.url": labels.URL, "m1k1o.neko_rooms.instance": manager.config.InstanceName, "m1k1o.neko_rooms.epr.min": fmt.Sprintf("%d", labels.Epr.Min), "m1k1o.neko_rooms.epr.max": fmt.Sprintf("%d", labels.Epr.Max), "m1k1o.neko_rooms.neko_image": labels.NekoImage, } + // Only when using traefik is the URL fixed with the room itself and not with neko-rooms. + if manager.config.TraefikEnabled { + labelsMap["m1k1o.neko_rooms.url"] = manager.config.GetRoomUrl(labels.Name) + } + if labels.BrowserPolicy != nil { labelsMap["m1k1o.neko_rooms.browser_policy"] = "true" labelsMap["m1k1o.neko_rooms.browser_policy.type"] = string(labels.BrowserPolicy.Type) diff --git a/internal/room/manager.go b/internal/room/manager.go index f1fb693..ba26a15 100644 --- a/internal/room/manager.go +++ b/internal/room/manager.go @@ -170,7 +170,6 @@ func (manager *RoomManagerCtx) Create(settings types.RoomSettings) (string, erro labels := manager.serializeLabels(RoomLabels{ Name: roomName, - URL: manager.config.GetRoomUrl(roomName), Epr: epr, NekoImage: settings.NekoImage,