-
Notifications
You must be signed in to change notification settings - Fork 6
Getting Started
To get started with working on Helios, you first need to install git and Docker. Git is a source control manager, you'll use it to check out the source code from github, and Docker is a container manager. See the container overview below for information about Docker.
If you already know about containers, you can jump to Running the app
Docker is a container manager. A container is an isolated environment which bundles a bunch of pre-installed dependencies for specific program. Docker can be used to manage multiple container services that work together to implement an application. Thanks to containers, I can provide a file which describes the necessary containers needed to run Helios, and you can spin up the application with one command.
Helios uses Docker to run 4 containers which manage your development environment. The containers consist of a mysql database, a python API, a web server, and a javascript bundler. You can technically run each process manually and run the application that way, there are instructions in the README for this, but it's much simpler and faster to use docker.
After starting up Helios, (see Running the app below), you'll be able to see the running containers and their logs in the Containers tab of Docker Desktop. You should see an expandable section named helios Under this section are 4 containers.
| Container | Description |
|---|---|
| database-1 | This is the mysql database, running via mariadb. |
| api-1 | This is Helios's flask API. If you select this container and choose the logs tab, you'll see any python errors that may occur during development. |
| web-1 | This is Helios's static web server. It serves the main html page and javascript which drive the application. Usually there's nothing interesting in the logs here unless you're adding new static files that need to be loaded. |
| webpack-1 | This container is running webpack, the javascript bundler. If you make any javascript changes and find that your new code isn't running, check this container's logs for possible syntax errors. If your code can't be parsed, it won't get bundled, and you'll see the errors in this container's logs. |
Once you have docker installed, it should be available in your command prompt. Open up a command prompt and enter the following:
git clone https://github.com/Helioviewer-Project/helios.git
cd helios
docker compose -f compose.devel.yaml up-
git clonewill download the source code for Helios into a folder namedhelios. -
cd heliosmakes your command prompt enter that folder -
docker compose -f compose.devel.yaml upwill start up the necessary containers to run Helios.
The first run may take some time while docker creates the containers. Later runs will startup much faster. Wait for docker to finish starting up the containers, and then go to localhost:8000.
You should see Helios load up, running out of the containers and source code on your PC.
At this point you can review the Development Guide to get an idea of how the application is implemented.