@glebvvs

Почему падает контейнер php-fpm при запуске супервизора?

Есть такой файл docker-compose.yml
version: "2"
services:
  nginx:
    image: nginx:latest
    container_name: dev-chellange-nginx
    ports:
      - 7000:80
    volumes: 
      - ./docker/nginx:/etc/nginx/conf.d
      - ./src:/usr/share/nginx/html
    links:
      - php
  php:
    build: ./docker/php
    container_name: dev-chellange-php
    volumes: 
      - ./src:/var/www/html
      - ./docker/php/supervisor:/etc/supervisor/conf.d
    links:
      - mysql
      - redis
  mysql:
    image: mysql
    container_name: dev-chellange-mysql
    command: --default-authentication-plugin=mysql_native_password
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: dev_chellange
  redis:
    image: redis
    container_name: dev-chellange-redis


Докерфайл для контейнера с PHP
FROM php:7.4-fpm

# Install dependencies
RUN apt-get update && apt-get install -y \
    build-essential \
    supervisor \
    libpng-dev \
    libjpeg62-turbo-dev \
    libfreetype6-dev \
    locales \
    zip \
    jpegoptim optipng pngquant gifsicle \
    vim \
    unzip \
    git \
    curl

# Install extensions
RUN docker-php-ext-install pdo pdo_mysql && docker-php-ext-enable pdo_mysql
RUN pecl install redis && docker-php-ext-enable redis

CMD ["/usr/bin/supervisord"]


Конфигурация супервизора для воркера:
[program:queue-workers]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/application/artisan queue:work --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
user=root
numprocs=5
redirect_stderr=true
stdout_logfile=/etc/supervisor/conf.d/queue-workers.log
stopwaitsecs=3600


Проблема следующая. Если запустить супервизор напрямую через терминал контейнера после выполнения docker-compose up, то все работает, супервизор запускается и воркер работает корректно. Но если пытаться это сделать через директиву cmd в докерфайле (как указанно в примере) то контейнер падает после команды docker-compose up.
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы