This repo contains the source for math-ninja-app.com. It forms the basis of the math-ninja container, deployed via the rw-platform.
To spin up a local instance:
$ docker-compose up
This will build as required, and then instantiate the stack. If this isn't the first time you've run it, and you need to rebuild any containers (e.g. the app container):
$ docker-compose build web
Deployment is via razebot:
razebot deploy math-ninja to <NAME_OF_STAGE>
NAME_OF_STAGE is either
Whenever a PR is merged to
development, DockerHub builds the 4 requisite images, and tags them with
staging. Once these images are built, you can deploy to staging as per the instructions above.
The site will be available at mathninja.rwdev.io.
NOTE: If you are unable to connect to this site, check that you've added your IP address to razenet with
razebot razenet list.
To create and deploy a new version of math ninja to production:
- Create a PR from
master. This will include all the changes you want to release.
- Merge the PR.
- Create a new GitHub release. It needs a name of the form
v1.2.3, with the appropriate numbering.
- DockerHub will then build the container for you.
- Update the
versionsfile in the
rw-platformdirectory of the
servicesrepo to reflect this new version number. Push this change to GitHub.
Once the images have built, ask razebot to deploy it for you:
razebot deploy math-ninja to platform
Should you need to deploy large files, please use the raywenderlich.com CDN: wolverine.raywenderlich.com. This is backed by the cdn.raywenderlich.com S3 bucket in AWS.