In the postgres dockerhub description it says:
Aiming to have CircleCI extended images ease adoption of Docker and CircleCI. Once users are successful, we encourage users to build and customize their images to suite their individual project needs.
I agree this seems like a good idea, however the fact that I can’t see the source code for the prebuilt Docker images that CircleCI provides makes extending them much harder. For example I have extended the circleci/python:3.6 image like so:
FROM circleci/python:3.6 RUN sudo apt-get update && sudo apt-get install -f -y postgresql-client CMD ["python3"]
(Because I couldn’t get postgres to work without installing that client. I have no idea why it fixed my issue but it did…) However now I get an error I was not previously getting, which makes me think that
CMD ["python3"] may not be the right CMD to run. However I have no way of telling what CMD the circleci/python:3.6 image is running, so I can’t duplicate it exactly like I’d like to.
Is there any reason CircleCI’s docker images used in tests can’t be open source? Besides making it easier to extend them it’d also give more visibility into what their differences are.