2017-12-22 1 views
0

Supervisor (supervisord)을 사용하여 CentOS 기반 Docker 컨테이너에서 일부 서비스를 실행합니다.이 컨테이너에는 해당 서비스에 대한 주기적 동작을 트리거하기 위해 cronie이 추가로 설치되어 있습니다.권한이없는 사용자와 함께 cron 데몬을 포 그라운드에서 실행하는 방법은 무엇입니까?

감독자는 자신이 관리하는 프로세스가 포어 그라운드에서 실행되어야합니다 (자체적으로 대몬 화합니다). 이는 crond-n 플래그가 있기 때문에 문제가되지 않습니다.

crond: can't open or create /var/run/crond.pid: Permission denied

이 문제를 해결하기 위해 어떤 방법이 있나요 : 문제는 당신이 전경에서 실행하더라도 루트가 아닌 사용자로 시작되지 않을 수 있다는 것입니다? 아니면 요구 사항에 맞는 몇 가지 대체 (단순, 경량) 일정 솔루션이 있습니까?

+0

FYI https://stackoverflow.com/a/5174433/1207049 – marekful

+0

@marekful 그 pid 파일 조작은 도움이되지 않습니다. 나는 벌써 시도했고,'crond'는 또 다른 오류로 실패했다. – Victor

+0

비슷한 문제가 해결되었습니다. https://stackoverflow.com/a/47668626/3514821 –

답변

0

나는 그렇게 생각하지 않습니다하지만 당신은이 작업에 내부 또는 자신의 용기없이 useland 스케줄러를 전용보기 &의 또 다른 지점을 시도 할 수 있습니다

공유에 저장된 스크립트에 스케줄러 트리거를 실행이 하나 볼륨에 대한 액세스 권한이 있어야합니다.

+0

무엇이 요점입니까? 루트가 아닌 사용자로 실행하는 문제를 어떻게 해결합니까? – Victor

+0

사용자 영역 스케줄러는 no-root를 의미합니다. –

관련 문제