So I know how to launch a normal Django app. But we've been working on a project that is mostly django, but we also use Nodejs and socket.io on a different local host port to make the application live. We also use redis on a different port as well, to connect node and django.
Right now it's working on our local development environment. But I'm just lost as to how to transition into a production environment, From this point.
Thanks a ton!
Your production environment is going to be similar to your development environment - you're going to need Node.js, Django, and Redis in production. They can either all be on one server, or have separate servers. Alternatively, you might like to deploy Redis to its own server, and have another for your Node & Django components.
One key difference is you should use a "proper" webserver in production. The server you get by running python manage.py runserver is designed for development, not production traffic. The Django developers recommend using Apache and mod_wsgi, but you can also use other servers like Nginx.
Node, by contrast, often does use the server you get by running node app.js, but generally with an app that monitors it and restarts it in case of problems. Systemd is a popular choice.
If you don't want to set up your own servers, you could use Heroku instead. They can host both Django and Node. They'll handle things like making sure your app restarts if it crashes.