我正在尝试使用systemd服务配置docker exec
,但是它总是失败。
问:是否可以那样运行,还是需要在bash脚本(.sh)中使用?
/etc/systemd/system/laravel.service
[Unit]
Description=Laravel Queue
After=docker.service
Requires=docker.service
[Service]
Type=simple
ExecStart="/usr/bin/docker exec -it my_docker /usr/bin/php artisan queue:work --env=production --tries 2 --timeout 60"
User=ubuntu
Group=ubuntu
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target
sudo服务vetspay状态
jan 05 03:04:39 legolas systemd[1]: Started Laravel Queue.
jan 05 03:04:39 legolas systemd[1]: laravel.service: Main process exited, code=exited, status=216/GROUP
jan 05 03:04:39 legolas systemd[1]: laravel.service: Unit entered failed state.
jan 05 03:04:39 legolas systemd[1]: laravel.service: Failed with result 'exit-code'.
最佳答案
错误(输入设备不是...)是由以下行引起的: -it ExecStart="/usr/bin/docker exec -it my_docker /usr/bin/php artisan queue:work --env=production --tries 2 --timeout 60"User=ubuntu
,将其删除,当docker exec在bash文件中时没有必要
关于docker - 在systemd服务中运行 'docker exec'(代码为已退出,状态为216/组),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48107603/