Sametime Meetings auf einem Server mit mehreren IP-Adressen

von Thomas, assono GmbH, Standort Kiel, 21.05.2021

Installiert man Sametime Meetings 11.x unter Docker auf einem Docker Host mit 2 oder mehr IP-Adressen - also einem "multi-homed server", ist der NGINX-Container etwas gierig und bindet seine Ports (80/tcp und 443/tcp) an alle IP-Adressen:

netstat -tlpan
Aktive Internetverbindungen (Server und stehende Verbindungen)
Proto  Recv-Q  Send-Q  Local Address  Foreign Address   State      PID/Program name
...
tcp    0    0    0.0.0.0:443    0.0.0.0:*     LISTEN      21733/docker-proxy
tcp    0    0    0.0.0.0:80    0.0.0.0:*     LISTEN      21789/docker-proxy
...

Das kann so in Ordnung sein, muss es aber nicht. Möchte man auf dem gleichen Server nämlich die zweite (oder eine weitere) IP-Adresse für einen anderen HTTP(S)-Dienst nutzen, muss man Docker überzeugen, sich auf eine IP-Adresse zu beschränken.

Dazu könnte man in der docker-compose.yml folgende Änderung vornehmen (sei 111.111.111.111 die IP-Adresse, auf der der Meetings-Server lauschen soll):

nginx:
        image: sametime-docker-prod.artifactory.cwp.pnp-hcl.com/meetings-web:${BUILD_LEVEL}
        restart: ${RESTART_POLICY}
        ports:
            - '111.111.111.111:${HTTP_PORT}:80'
            - '111.111.111.111:${HTTPS_PORT}:443'

Aus meiner Sicht etwas eleganter ist aber die Anpassung der Konfigurationsdatei .env:

# Exposed HTTP port.
#HTTP_PORT=80
HTTP_PORT=111.111.111.111:80

# Exposed HTTPS port.
#HTTPS_PORT=443
HTTPS_PORT=111.111.111.111:443

Nach dem allfälligen docker-compose down und docker-compose up -d sieht es dann besser aus:

netstat -tlpan
Aktive Internetverbindungen (Server und stehende Verbindungen)
Proto  Recv-Q  Send-Q  Local Address    Foreign Address   State      PID/Program name
...
tcp    0    0    111.111.111.111:443  0.0.0.0:*     LISTEN      21733/docker-proxy
tcp    0    0    111.111.111.111:80  0.0.0.0:*     LISTEN      21789/docker-proxy
...

Wenn und falls man den JVB_TCP_PORT definiert hat, damit die Jitsi Video Bridge alternativ (oder ausschließlich) über TCP laufen kann, geht es hier leider nicht über die .env-Datei, da in der docker-compose.yml der Port leider doppelt verwendet wird:

jvb:
        image: sametime-docker-prod.artifactory.cwp.pnp-hcl.com/meetings-jvb:${BUILD_LEVEL}
        restart: ${RESTART_POLICY}
        ports:
            - '${JVB_PORT}:${JVB_PORT}/udp'
            - '${JVB_TCP_PORT}:${JVB_TCP_PORT}'

Hier müsste man dann direkt in der docker-compose.yml Hand anlegen.

Andererseits: Wenn man hier einen Nicht-Standard-Port wie 4443 definiert, stört es im Allgemeinen auch nicht, wenn sich der Container an 0.0.0.0, also alle vorhandenen Schnittstellen bindet.

Thomas Bahn

Thomas Bahn

Diplom-Mathematiker, IT-Spezialist & Speaker auf Fachkonferenzen

Thomas Bahn ist Mitgründer und Geschäftsführer der assono GmbH. Seit mehr als 20 Jahren berät er erfolgreich Unternehmen aus ganz Deutschland rund um das Thema Software und Digitalisierung. Insbesondere in den Bereichen HCL Notes und Domino (ehemals IBM) als auch bei aktuellen, unternehmensrelevanten KI-Themen wie Chatbots kennt er die neusten Entwicklungen und weiß, wie diese sich gewinnbringend für Unternehmen einsetzen lassen. Aufgrund seines Expertenwissens ist Thomas Bahn regelmäßiger Sprecher auf nationalen und internationalen Fachkonferenzen.

Fachbeitrag Administration HCL Sametime Für Entwickler

Sie haben Fragen zu diesem Artikel? Kontaktieren Sie uns gerne: blog@assono.de

Sie haben Interesse an diesem Thema?

Gerne bieten wir Ihnen eine individuelle Beratung oder einen Workshop an.

Kontaktieren Sie uns

Weitere interessante Artikel