Рубрики
Uncategorized

Развертывание докера очереди приложений laravel и планирование задач

Автор оригинала: David Wong.

В прошлой статье мы писали, как развернуть laravel приложение с докером , а затем в этой статье мы написали, как развернуть приложение с очередью , а также планирование задач Применение laravel.

Прежде всего, давайте подготовим наш файл docker/app.cron

Обратите внимание, что в конце файла требуется пустая строка.

#!/usr/bin/env bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
* * * * * cd /var/www/html && php artisan schedule:run >> /dev/null 2>&1

2. Создайте новую запись file:docker-entrypoint-queue.sh

Обратите внимание, что для этого файла требуется разрешение на выполнение.

#!/usr/bin/env bash

php artisan cache:clear
php artisan config:cache
php artisan route:cache
php artisan view:cache

#Load the scheduling task and restart Cron
crontab docker/app.cron
/etc/init.d/cron restart

#Execution queue
php artisan queue:work --timeout=60

3. На этот раз мы используем программу запуска docker compose:./docker-compose.yml

version: "3.4"

services:
  api:
    build: .
    image: example-laravel
    networks:
      - frontend
      - backend
    environment:
      - APP_ENV=development
    ports:
      - "80:80"
    entrypoint: ./docker-entrypoint.sh
  queue:
    build: .
    image: example-laravel
    networks:
      - backend
    environment:
      - APP_ENV=development
    entrypoint: ./docker-entrypoint-queue.sh
    
networks:
  frontend:
  backend:

В-третьих, операция

docker-compose up -d

Связанное чтение

  • Развертывание докера приложения laravel – Базовое приложение
  • Развертывание докера очереди приложений laravel и планирование задач
  • Развертывание докера приложения laravel с использованием wkhtmltopdf Экспорт PDF
  • Пример кода