Я использую docker -композицию. Мне нужно вставить некоторое поведение в жизненный цикл запуска контейнера. (Создание собственного изображения излишне, и я хочу этого избежать.)
Обычно я переопределяю точку входа (запускаю мои команды, затем запускаю исходную точку входа), но для этого изображения я не могу, так как он выполняет важную работу .
Порядок, в котором я хочу:
- точка входа (я не могу переопределить это, поскольку он должен запускаться раньше, чем мои вещи)
- материал, который я хочу запустить
- исходная команда (
php-fpm
)
Итак, я попробовал это:
command: >
my_extra_command_1
my_extra_command_2
php-fpm
и это:
command: my_extra_command_1; my_extra_command_2; php-fpm
и это :
command: ["my_extra_command_1", "my_extra_command_2", "php-fpm"]
Ничего из этого не работает, потому что контейнер останавливается после моей первой команды. Он не запускает все команды.
Какой правильный синтаксис?
Кстати, Dockerfile изображения определяется с использованием формы exe c следующим образом:
ENTRYPOINT ["/entrypoint.sh"]
CMD ["php-fpm"]
и сценарий точки входа заканчивается на exec "$@"
.