다음과 같은 원샷 서비스가 있습니다.
[Unit]
Description=My Service
After=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/myservice.sh start
ExecStop=/usr/local/bin/myservice.sh stop
RemainAfterExit=true
[Install]
WantedBy=multi-user.target
내가 실행중인 도커 이미지에는
STOPSIGNAL SIGRTMIN+3
ENTRYPOINT ["/sbin/init"]
컨테이너를 시작하면 예상대로 서비스가 시작됩니다. 수동으로 실행하면 systemctl stop myservice
예상대로 작동하지만 실행하면 docker stop mycontainer
중지가 호출되지 않습니다. 정지 신호 문제인가요, 아니면 서비스 구성 문제인가요?
답변1
서비스와 신호는 정확했지만 systemd-halt
이것이 작동하려면 서비스가 실행 중이어야 합니다.