Я использую docker-compose для настройки NextJS-приложения, которое извлекает данные из REST-API Wordpress, работающего в отдельных контейнерах.
Проблема в том, что я получаю ECONNREFUSED
, когда пытаюсь получить илиОтправьте wordpress-контейнер http://wordpress:8000 из NextJS-контейнера.Я могу без проблем пропинговать wordpress: 8000.
Если я использую Postman или пытаюсь получить REST-API с другого хоста (т.е. не с компьютера, на котором выполняется docker-compose), используя общедоступный ip, он работает отлично.
Я подозреваю, что есть какая-то проблема с конфигурацией докера, но я довольно растерялся, потому что пинг работает, но не wget.
Кто-нибудь знает, кто может быть виновником?
Мой докер-compose.yml :
version: '2'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: ***REMOVED***
MYSQL_DATABASE: ***REMOVED***
MYSQL_USER: ***REMOVED***
MYSQL_PASSWORD: ***REMOVED***
networks:
- back
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- ./wp-content:/var/www/html/wp-content
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: ***REMOVED****
networks:
- back
phpmyadmin:
depends_on:
- db
image: phpmyadmin/phpmyadmin
restart: always
ports:
- 8080:80
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: ***REMOVED***
networks:
- back
next-app:
depends_on:
- wordpress
build:
context: ./next-app
dockerfile: Dockerfile
volumes:
- './next-app:/usr/src/app'
- '/usr/src/app/node_modules'
ports:
- '80:3000'
networks:
- back
express-server:
build:
context: ./express-server
dockerfile: Dockerfile
ports:
- '3001:3001'
networks:
back:
driver: bridge
volumes:
db_data: