thedataincubator / forecaster

3 stars 1 forks source link

Dockerize application #3

Open ZachGlassman opened 6 years ago

ZachGlassman commented 6 years ago

Right now we are building from https://github.com/thedataincubator/conda-buildpack/tree/py3 which is non ideal. It would be much preferred to Dockerize.

derekmhh commented 6 years ago

I'm interested in working on this.

ZachGlassman commented 6 years ago

sounds good. Let me add you to the repo

craw-daddy commented 6 years ago

For my information, could you explain what you mean by "Dockerize" the application? I'm not familiar with what this is supposed to mean.

Thanks!

ZachGlassman commented 6 years ago

Dockerize means to use Docker to build the applicatoin as a container that runs in effectively a virtualized operating system instead of directly on the (in this case Heroku) Python environment.

craw-daddy commented 6 years ago

I could attempt to work on this. Docker wants to request permission to access TDI repositories in order to set up an automated build. Should I send this request for authorization? I assume that we'd want to set up automated builds in the same manner as the testing seems to be working here.

ZachGlassman commented 6 years ago

Please explain this request a bit more. The automated builds here are controlled by the .travis.yml file and altering that on a branch will alter the way CI runs for that branch. The Docker container should not need to access our repositories, although Travis will need a secret to deploy the container once it passes master.

craw-daddy commented 6 years ago

Ok, I think I'm clearly not understanding the way that Docker is used for the deployment. So the testing will be done here, but the deployment will be on Docker.

ZachGlassman commented 6 years ago

Docker is a containerization software, think of it like packaging a program and all of its depencencies together, sort of like a virtual operating system. The idea is that the same Docker image (and thus identical containers) will be used to run the application in both testing and production, this way we can ensure we are actually testing the proper environment. We will use the same Travis CI and Heroku system we have been using.