Betalningsmetoder Abuse

Vad är containerhamnar

10.09.2023, 23:08

Containerportar är specifika nätverksportar som kan kopplas till specifika tjänster eller applikationer inom en container.

Vad är speciellt med containrar?

Varje behållare kan ha egna portar som kan användas för att kommunicera med omvärlden eller med andra behållare. När du startar en container kan du ange vilka portar som ska vara tillgängliga inuti containern och vilka portar som ska vidarebefordras till värddatorn.

ports:

external_port:Internal port

Låt oss till exempel vidarebefordra port 80 som 8094:

docker-nginx:
  image: nginx
  ports:
    - '8094:80'

När behållaren körs kan applikationen inuti behållaren lyssna eller skicka data via lämplig port. Användare kan interagera med applikationen genom att komma åt den containerport som vidarebefordrades till värddatorn.

Så här startar du en behållare

Om du vill starta containerportar måste du använda kommandot docker run med flaggan -p eller --publish.

Syntaxen för kommandot docker run med flaggan -p är som följer:

docker run -p <host port>:<container port> <image_name>

Där:

<host-port> är den port på din värd som kommer att proxies till containerporten.

<container-port> - den port i containern som kommer att nås via den angivna värdporten.

<image_name> - namnet på den containeravbildning som du vill köra.

Om du t.ex. vill starta en container med en webbserver på port 80 och proxya den till port 8080 på din värd kan du använda följande kommando:

docker run -p 8080:80 nginx

Webbservern som körs i behållaren kommer nu att vara tillgänglig på port 8080 på din värd.

Du kan också använda ett portintervall genom att ange flera par <host-port>:<container-port>.

Ett exempel:

docker run -p 8080-8082:80-82 nginx

Detta kommer att proxyportarna 80, 81 och 82 i behållaren till portarna 8080, 8081 respektive 8082 i din värd. När du har startat behållaren med de proxade portarna kommer du att kunna komma åt dem via de angivna värdportarna.