-
Notifications
You must be signed in to change notification settings - Fork 68
Deployment
JSShell offers a couple of deployments methods:
We need to make sure docker and docker-compose are installed successfully on your system. Personally, whenever I setup a new server (either local or cloud based) I use my own bootstrap snippets to automate the process. Feel free to use my docker bootstrap script - https://gist.github.com/Den1al/bcff8f968be3ed077d83fad59e06ac44. Once the script has finished, we have docker and docker-compose up and running.
It is recommended to use a custom domain, so you can enable TLS support. This might be crucial to you, since you can't load mixed content in most modern browsers. To create TLS certificates simply use the create_cert.py
file inside the scripts
directory. Once done, don't forget to update the config.json
file with the correct selected domain.
The scripts
directory contains a special file called start_docker_shell.sh
which bootstraps the entire process of creating the web server and database components effortlessly (if not deployed already). When those components are successfully deployed, the shell
component will be loaded, and the splash screen will be shown to you.
Although I truly recommend using docker to deploy JSShell, it is also possible to deploy it without it. Make sure you have a mongoDB
database up and running. When done - update the config.json
file with the corresponding data, such as the DB host, username and password. When deploying without docker, you also need to update the port in which the web server will run (usually 443, since I recommend using TLS), and the corresponding URL.
Use the manage.py
file to run the webserver AND the shell itself. That scripts accepts as a parameter which component you want to run (web
/ shell
). Make sure the web server and the database are up and running before using the shell
component.
If you have any issues or questions that are not covered in this wiki, please reach out on twitter @Daniel_Abeles.