Задать вопрос
@EugeneNail

Docker/Laravel: env подтягивается с задержкой. Почему?

DB_HOST указан в виде названия контейнера для автоматического преобразования в IP-адрес.
Сам адрес доходит до приложения ларавел примерно через десять секунд, после запуска php artisan serve.
При этом, если выводить переменные окружения через echo, то они выводятся в docker logs. То есть, сам контейнер успешно загружает их, это проблемы либо с ларавел, либо с внутрисетевым взаимодействием контейнеров.

Я:
- чистил кеш конфига
- чистил кеш конфига и кешировал его обратно
- использовал статический адрес для db-service-container
- менял образы сервиса
- использовал пустые переменные .env
- использовал заполненные переменные .env
- использовал переменные в docker-compose.yml

version: '3.8'

services:
    db-service:
        image: mysql/mysql-server:8.0
        container_name: db-service-container
        environment:
            MYSQL_DATABASE: ${DB_DATABASE}
            MYSQL_USER: ${DB_USERNAME}
            MYSQL_PASSWORD: ${DB_PASSWORD}

    app:
        build: .
        container_name: app-container
        ports:
            - 8000:8000
        command: bash -c "php artisan serve --host 0.0.0.0"
        depends_on:
            - db-service
        volumes:
            - .:/var/www/html
  • Вопрос задан
  • 151 просмотр
Подписаться 2 Средний 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы