-
Notifications
You must be signed in to change notification settings - Fork 170
Setup Guide Beta
Local development for The Blue Alliance uses a Docker container setup. This allows for isolation of all dependencies and tools required to run The Blue Alliance locally to be installed in a self-contained instance.
- Install Docker
This section assumes a minimal setup and knowledge of Git/GitHub. For those that are unfamiliar with either, see the Getting started with GitHub guide and the Git Handbook
Clone the project, optionally from your own fork of the-blue-alliance/the-blue-alliance
if you plan to submit a pull request to The Blue Alliance.
Before starting the container, ensure that Docker is up and running.
$ docker-compose up
After a little bit of installation and setup, a local instance of The Blue Alliance will be accessible at localhost:8080. The Google App Engine admin panel for the local instance can be access at localhost:8000.
docker-compose
will automatically manage syncing changes from your local environment to the container when files are changed, added, or removed. This means that you can use your favorite editor or IDE to edit files locally and the changes will automatically be reflected in the container in real time.
You can connect to the container via docker-compose exec tba bash
. Processes in the container run connected to a tmux session. You can connect to the tmux
session via tmux a
. The first tab is a bash
session cd
’d to the project’s working directory, /tba
. The second tab is the dev_appserver.py
output which contains Google App Engine logs. Other tmux
tabs are labeled based on the foregrounded process running.
# ssh in to dev container in one tab
$ docker-compose exec tba bash
> tmux attach
The development runbook has documentation for good next steps when working on The Blue Alliance, including bootstrapping data from production to your development environment. Before submitting a PR, make sure to run the tests, lints, and type checks locally.