Is swagger running inside the laravel.test container as well ? Did you try just localhost/openapi
Feb 17, 2022
10
Level 1
Laravel Sail bridge - file_get_contents: Connection refused
My application uses swagger which then calls file_get_contents at localhost:8080/openapi
But php cannot connect to this address:
file_get_contents(localhost:8080/openapi): Failed to open stream: Connection refused
my docker-compose.yml
version: "3"
services:
laravel.test:
build:
context: ./vendor/laravel/sail/runtimes/8.1
dockerfile: Dockerfile
args:
WWWGROUP: "${WWWGROUP}"
image: sail-8.1/app
extra_hosts:
- "host.docker.internal:host-gateway"
ports:
- "${APP_PORT:-80}:80"
environment:
WWWUSER: "${WWWUSER}"
LARAVEL_SAIL: 1
XDEBUG_MODE: "${SAIL_XDEBUG_MODE:-off}"
XDEBUG_CONFIG: "${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}"
volumes:
- ".:/var/www/html"
networks:
- sail
depends_on:
- mysql
- redis
- meilisearch
mysql:
image: "mysql/mysql-server:8.0"
ports:
- "${FORWARD_DB_PORT:-3306}:3306"
environment:
MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}"
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: "${DB_DATABASE}"
MYSQL_USER: "${DB_USERNAME}"
MYSQL_PASSWORD: "${DB_PASSWORD}"
MYSQL_ALLOW_EMPTY_PASSWORD: 1
volumes:
- "sail-mysql:/var/lib/mysql"
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
redis:
image: "redis:alpine"
ports:
- "${FORWARD_REDIS_PORT:-6379}:6379"
volumes:
- "sail-redis:/data"
networks:
- sail
healthcheck:
test: ["CMD", "redis-cli", "ping"]
retries: 3
timeout: 5s
meilisearch:
image: "getmeili/meilisearch:latest"
ports:
- "${FORWARD_MEILISEARCH_PORT:-7700}:7700"
volumes:
- "sail-meilisearch:/data.ms"
networks:
- sail
healthcheck:
test:
[
"CMD",
"wget",
"--no-verbose",
"--spider",
"http://localhost:7700/health",
]
retries: 3
timeout: 5s
mailhog:
image: "mailhog/mailhog:latest"
ports:
- "${FORWARD_MAILHOG_PORT:-1025}:1025"
- "${FORWARD_MAILHOG_DASHBOARD_PORT:-8025}:8025"
networks:
- sail
networks:
sail:
driver: bridge
volumes:
sail-mysql:
driver: local
sail-redis:
driver: local
sail-meilisearch:
driver: local
I also tried to use host.docker.internal/openapi or laravel.test/openapi neither works. Can you advise me on how to set up a docker network correctly so that I can call my application from my application?
When i call in sail shell curl "localhost/openapi" or curl "laravel.test/openapi" it works
Thank you guys
Please or to participate in this conversation.