- 작성시간 : 2018/11/25 00:07
- 퍼머링크 : mcchae.egloos.com/11314220
- 덧글수 : 2
기존에 리눅스 등에서 재부팅을 하더라도 서비스를 시작하게 하려면







rc.local 에 넣거나, 아니면 supervisor 등으로 재시작 하도록 해야 합니다.
그런것을 Photon 리눅스에서 어떻게 할까 찾아보았습니다.
우선 기존에 pypi 파이썬 사설 저장소를 돌리기 위하여 docker-compose 를 돌렸습니다. 하단에 보면 해당 서비스가 도는 것을 확인할 수 있습니다.
문제는 다시 기동하면 이 서비스가 자동으로 돌지 않는다는 것입니다.
이렇게 하려면,
/etc/systemd/system/docker-pypi.service
라는 파일을 만들어
[Unit]
Description=pypi compose service
Requires=docker.service
After=docker.service
[Service]
Restart=always
WorkingDirectory=/root/work/pypi_repository
ExecStart=/usr/local/bin/docker-compose -f /root/work/pypi_repository/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /root/work/pypi_repository/docker-compose.yml down
[Install]
WantedBy=default.target
라는 내용을 넣어줍니다.
그 다음, 해당 서비스를 다음과 같이 enable 시켜줍니다.
systemctl enable docker-pypi.service
Unit 에서는 docker 서비스가 돌고 있어야 한다는 것이고,
Service 에 docker-compose 로 해당 서비스를 돌립니다.
이제 reboot을 해 보아도,
해당 서비스가 잘 동작하고 있음을 알 수 있습니다.
이제는 ESXi 서버가 다시 reboot 된다고 하더라도,
해당 VM을 자동으로 실행하게 할 필요가 있습니다.
ESXi의 Manage 메뉴에서 System 탭을 선택하고, Autostart를 선택하면 VM 목록이 보입니다.
자동으로 시작하고픈 VM을 선택하고
Enabled 를 "Yes" 시킵니다.
목록의 하단에 1, 2 와 같이 시작 순서를 정할 수 있습니다.
이제 ESXi 서버가 재기동하더라도 해당 VM들은 자동으로 시작됩니다.
어느 분께는 도움이 되셨기를..



덧글
저의 보람입니다~ 감사합니다 ^^