Готовый перевод Mastering Swoole PHP: Build High Performance Concurrent System with Async and Coroutines / Осваиваем Swoole PHP: построение высокопроизводительной конкурентной системы с асинхронностью и корутинами: Создайте собственный Dockerfile
Сборка собственного Dockerfile
Мы можем начать с базового файла Docker php: 7.4.4-cli, вы можете изменить его в зависимости от требуемой версии PHP. Мы также включили несколько полезных команд для отладки и обучения. Вы можете использовать htop для просмотра структуры процесса Swoole.
FROM php:7.4.2-cli
RUN apt-get update && apt-get install vim -y && \
apt-get install openssl -y && \
apt-get install libssl-dev -y && \
apt-get install wget -y && \
apt-get install git -y && \
apt-get install procps -y && \
apt-get install htop -y
RUN cd /tmp && git clone https://github.com/swoole/swoole-src.git && \
cd swoole-src && \
git checkout v4.5.5 && \
phpize && \
./configure --enable-openssl && \
make && make install
RUN touch /usr/local/etc/php/conf.d/swoole.ini && \
echo 'extension=swoole.so' > /usr/local/etc/php/conf.d/swoole.ini
RUN wget -O /usr/local/bin/dumb-init && \
https://github.com/Yelp/dumb-init/releases/download/v1.2.2/dumb-init_1.2.2_amd64
RUN chmod +x /usr/local/bin/dumb-init
RUN apt-get autoremove -y && rm -rf /var/lib/apt/lists/*
ENTRYPOINT ["/usr/local/bin/dumb-init", "--", "php"]
Стоит упомянуть, что dumb-init - это минимальная система инициализации для передачи сигналов процессу Swoole, иначе, когда вы нажмете CTRL-C, сервер не будет завершен и остановлен. Вы можете узнать больше о системе инициализации Linux и обработке сигналов.
Вы можете удалить из боевой конфигурации такие инструменты, как procps и htop. Эти инструменты полезны на этапе отладки приложения Swoole.
Внимание! Этот перевод, возможно, ещё не готов.
Его статус: идёт перевод
Переведено на Нотабеноиде
http://notabenoid.org/book/81342/496989
Переводчики: bubenok
Настройки
Готово:
