fix: update dockerfile and requirements.txt to bring in line with ind…
- bring python in line with production (3.8.10)
- modify docker command to match production (use uwsgi)
- add formal volume statement for collections in dockerfile
- update requirements.txt so everything works when checked out
- remove install_collections from docker (it should be run on host collections directory, and bind-mounted to container)
Seems like awscli is installed twice, once by apt and once by pip?
Well, sort of - I assume the one in requirements.txt is to support folks not using docker/installing directly on local. (That was there before my change - I just had un-commented the requirements.txt one inadvertantly)
Let me try quick to confirm we can remove the docker one, and be covered only by the requirements.txt for both cases.
A few things @wumpus
bottom line up front - I actually think we should remove that install-collections script from docker build all together.
details:
- installing awscli via python only does work
- There are some small issues with OS level depedencies (for example, aws ... help doesn't work)
- no matter which way we install awscli, that install script doesn't work anymore, since we've disabled anon access to s3, and, if we pass ENV vars or build args to docker at build time, the variable values are stored in the image, which, for credentials, is a no-no.
- we can keep the script local, and have collections provided by volume mapping, like the private index server project (I have yet to check in) - IMHO, this is better in almost every way. (it's usually a bad idea to put a lot of actual data in the docker image)
@wumpus I updated Readme, requirements, and docker to be in alignment with that POV explained in last comment.
@sebastian-nagel looking forward to your comments!