You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Making centillion serverless (and solving #20, run centillion on heroku) is going to be much easier if we containerize centillion.
We've had excellent expereinces with jfloff's alpine-python-3, a super lightweight Python container that's easy to configure with a requirements.txt file. This is a good bet.
Should we split centillion into sub-services? My initial response is no, there's no good reason since everything operates as a single unit. But that's not quite true - the Flask application and the Search object are a single unit, but when re-indexing, the application spawns independent tasks - so there might be some usefulness to having a container to run the search engine, and another container to update the search index, with both containers bind-mounting the search_index folder.
Furthermore, if we end up using SqlAlchemy (is this even necessary if we're using a container?), this may be wise to run as a separate service in a separate container. (Then again, maybe not.)
Okay, let's summarize.
First steps to dockerize centillion:
build a Dockerfile for whoosh/centillion and mayke shure it wurk guud
build a single-service docker-compose.yml file (bind-mount site_index directory) to run as a pod
test the configuration locally
test the configuration using beta site
if everything's going well, pull the old switcheroo with search.nihdatacommons.us
The text was updated successfully, but these errors were encountered:
Making centillion serverless (and solving #20, run centillion on heroku) is going to be much easier if we containerize centillion.
We've had excellent expereinces with jfloff's alpine-python-3, a super lightweight Python container that's easy to configure with a requirements.txt file. This is a good bet.
Should we split centillion into sub-services? My initial response is no, there's no good reason since everything operates as a single unit. But that's not quite true - the Flask application and the Search object are a single unit, but when re-indexing, the application spawns independent tasks - so there might be some usefulness to having a container to run the search engine, and another container to update the search index, with both containers bind-mounting the
search_index
folder.Furthermore, if we end up using SqlAlchemy (is this even necessary if we're using a container?), this may be wise to run as a separate service in a separate container. (Then again, maybe not.)
Okay, let's summarize.
First steps to dockerize centillion:
site_index
directory) to run as a podThe text was updated successfully, but these errors were encountered: