Как поддерживать автоматический запуск сервера django rest API на AWS?
Итак, я загрузил свой Django API с фреймворком Rest на экземпляр AWS EC2. Однако мне приходится вручную заходить в Putty и подключаться к моему экземпляру EC2 и включать API всякий раз, когда я хочу его использовать. Когда я выключаю свой компьютер, Putty закрывается, и доступ к API по ip-адресу больше невозможен. Как мне сохранить API включенным навсегда? Поможет ли переход на https? Или что можно сделать?
Вы можете заставить его жить всегда с помощью следующих средств,
- подключите ваш экземпляр ec2 с помощью ssh.
- Затем разверните ваш бэкенд (django) на этом экземпляре и запустите его на любом порту.
- После запуска на нужном порту, вы можете закрыть терминал, пожалуйста, не нажимайте ctrl+c, чтобы ваш django сервер не остановился. вы можете просто перейти через терминал. он будет запущен.
Вы также можете запустить сервер django на tmux (его терминал внутри терминала). вот учебник по tmux. https://linuxize.com/post/getting-started-with-tmux/
Другой подход заключается в том, что вы можете развернуть django с помощью контейнера docker.
Надеюсь, вы справитесь со своей проблемой.
Спасибо.
Ок Я наконец-то решил эту проблему. Итак, когда вы закрываете putty или сеанс ssh клиента, сеанс переходит в автономный режим. Однако, если вы запускаете сессию через демон, сессия продолжается в фоновом режиме, даже когда вы закрываете свои клиенты. Код таков
$ nohup python ./manage.py runserver 0.0.0.0:8000 &
Конечно, вы можете использовать tmux или docker, как предложил madi, но я думаю, что запуск этого одного кода намного проще.