ipython 노트북을 서비스로 실행하는 방법

ipython 노트북을 서비스로 실행하는 방법

내 ipython 노트북이 잘 실행되고 있지만 SSH를 사용하여 로그인할 때마다 수동으로 시작할 필요가 없도록 서비스(시작, 중지, 다시 시작)로 실행하고 싶습니다.

어떻게 해야 하나요?

답변1

나는 사용하는 것이 좋습니다감독. 나는 그것을 사용하고 있다주피터허브감독자에 의해.

Supervisord는 프로그램을 서브루틴으로 생성하고 프로그램이 종료되면 다시 시작하도록 구성할 수 있으므로 항상 서비스를 유지할 수 있습니다. 몇 가지 구성 옵션이 있지만 매우 간단합니다. 보유하고 있는 프로그램을 중지하거나 시작할 수 있는 http 인터페이스도 있을 수 있습니다.

기본 정의는감독자 프로필, 프로그램은 다음과 같습니다.

[program:ipython_notebook]
command=/usr/local/bin/ipython notebook --ip 0.0.0.0 --port 8080
stderr_logfile = /var/log/supervisord/ipython_notebook-stderr.log
stdout_logfile = /var/log/supervisord/ipython_notebook-stdout.log

체계

나는 또한 systemd로 이 작업을 시도했고 이것이 내가 생각해낸 것입니다.

파일을 생성합니다:/etc/systemd/system/ipython.service. 문서 내용:

[Unit]
Description=IPython
After=network.target

[Service]
TimeoutStartSec=0
ExecStart=/usr/local/bin/ipython notebook --ip 0.0.0.0 --port 8080

[Install]
WantedBy=multi-user.target

ipython notebbok의 모든 매개변수를 확인하지는 않았지만 집을 지정할 수 있는 매개변수가 있을 것입니다. 매개변수가 아닌 경우 ptofile에서 확실히 찾을 수 있습니다. 이것도 추가해야 합니다.

그런 다음 서비스를 활성화해야 합니다.

systemctl enable /etc/systemd/system/ipython.service

그리고 시작하세요:

systemctl start ipython.service

확실하지는 않지만 WantedBy multi-user.target이라는 것을 확인했으며 시스템 재부팅 후 시작해야 하지만 systemd를 처음 사용하므로 틀릴 수 있습니다. :)

관련 정보