Добрый день, возникла следующая проблема, использую Docker Desktop, через docker-compose запускаю два контейнера, пробрасываю порт, но в итоге выдаёт ошибку 403. Если зайти в контейнер и проверить локально, то всё работает. Подскажите в чём проблема.
docker-compose.yml
version: "3.8"
services:
first-node:
&first
container_name: first-node
build:
context: .
dockerfile: Dockerfile
ports:
- "9057:9057"
second-node:
<<: *first
container_name: second-node
ports:
- "9077:9057"
Dockerfile:
FROM openjdk:8-alpine
WORKDIR /home/project/
COPY ./ /home/project/
CMD ["java", "-jar", "app.jar"]
Если зайти в контейнер и пробить локально, всё нормально:
curl -I 127.0.0.1:9057/index/main.html
HTTP/1.1 200 OK
Date: Thu, 25 Jun 2020 17:17:47 GMT
Content-Type: text/html;charset=utf-8
Content-Length: 0
Server: Jetty(9.3.z-SNAPSHOT)
Если пробить по внешнему IP, то выдаёт 403:
curl -I 172.21.0.3:9057/index/main.html
HTTP/1.1 403 Forbidden
Date: Thu, 25 Jun 2020 17:19:13 GMT
Cache-Control: must-revalidate,no-cache,no-store
Content-Type: text/html;charset=iso-8859-1
Content-Length: 330
Server: Jetty(9.3.z-SNAPSHOT)
Порты прослушиваются (внутри):
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.11:39245 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:9056 0.0.0.0:* LISTEN 1/java
tcp 0 0 0.0.0.0:9057 0.0.0.0:* LISTEN 1/java
udp 0 0 127.0.0.11:56731 0.0.0.0:* -
docker ps:
docker_second-node "java -jar app.…" 9 minutes ago Up 9 minutes 0.0.0.0:9077->9057/tcp second-node
docker_first-node "java -jar app.…" 9 minutes ago Up 9 minutes 0.0.0.0:9057->9057/tcp first-node