Как настроить работу roadrunner для laravel

Всем привет. Поднимаю свой проект на rr. Столкнулся с проблемой запуска в контейнере. Я не очень понимаю, как это работает, в rr.yaml в server должна быть команда которая запсукает воркеры, но в dockerfile должна быть команда, которая запускает приложение. Хотя я запускаю просто сервак через octane start и всё.

Может кто показать как вы запускаете проекты на rr?

Надо ли писать свой воркер?

Если надо, то почему я просто в консоли делаю octane:start и всё запускается

Что на данный момент есть на руках

Dockerfile

# Этап 1: Получение RoadRunner
FROM ghcr.io/roadrunner-server/roadrunner:2024.1 AS roadrunner

# Этап 2: Сборка PHP
FROM php:8.3-cli-alpine3.20 AS php-builder

# Установка системных зависимостей и расширений PHP
RUN apk add --no-cache \
    libpng-dev \
    libzip-dev \
    libpq-dev \
    libxml2-dev \
    oniguruma-dev \
    icu-dev \
    zip \
    unzip \
    git \
    bash \
    curl \
    autoconf \
    g++ \
    make \
    && docker-php-ext-install bcmath gd zip opcache pdo_pgsql pcntl intl mbstring xml \
    && pecl install redis \
    && docker-php-ext-enable redis \
    && rm -rf /var/cache/apk/*

# Копирование бинарного файла RoadRunner с первого этапа
COPY --from=roadrunner /usr/bin/rr /usr/local/bin/rr

# Настройка PHP конфигурации
COPY ./_docker/app/php.ini /usr/local/etc/php/conf.d/php.ini

# Установка Composer
ENV COMPOSER_ALLOW_SUPERUSER=1
RUN curl -sS https://getcomposer.org/installer | php -- \
    --filename=composer \
    --install-dir=/usr/local/bin

# Установка рабочей директории
WORKDIR /var/www

# Копирование конфигурации RoadRunner и стартового скрипта
COPY --link .rr.yaml /var/www/.rr.yaml

# Открытие порта приложения
EXPOSE 8000
# Определение команды для запуска приложения
CMD ["rr", "serve", "-d", "-c", "/var/www/.rr.yaml"]

rr.yaml

version: '3'

rpc:
  enable: true
  listen: tcp://127.0.0.1:6001

server:
  command: "php artisan octane:start"
  relay: "pipes"

http:
  address: 0.0.0.0:8000
  middleware: ["static", "gzip"]

static:
  dir: "public"

logs:
  mode: development
  level: debug
  file_logger_options:
    log_output: "storage/logs/rr.log"
    max_size: 10
    max_age: 24
    max_backups: 10
    compress: true

Ответы (0 шт):