这是一个Dockerfile。 https://hub.docker.com/r/kartoza/postgis/~/dockerfile/
我试图像这样在Docker-Compose中使用它:
postgres:
restart: always
image: kartoza/postgis:9.4-2.1
ports:
- "5432:5432"
我的问题是,如果您返回该链接并查看Dockerfile,则在最底部它正在运行start_postgres.sh和其他一些sh脚本。 docker 如何知道从何处提取这些sh脚本?我知道有一个具有脚本的Kartoza / postgis github存储库,但是在Dockerfile或我的docker-compose中没有任何步骤可以拉出或指向GitHub存储库,所以我完全困惑当我从这些脚本中提取这些脚本的位置运行我的docker-compose
数量:
- pgdata:/var/lib/postgresql/data/
最佳答案
Dockerhub上的Dockerfile
仅用于文档目的,完整的github存储库用于构建镜像,因此可以通过Docker的build context获得脚本:
$ docker build https://github.com/kartoza/docker-postgis
仅使用链接的
Dockerfile
会导致生成错误。编辑:澄清一下,Docker Hub是一个镜像存储库。内置镜像可以由Docker Hub从提供的github存储库上传或构建。然后其他用户可以简单地下载(拉出)那些图像。
关于github - 在构建Dockerfile时,Docker在哪里知道从哪里提取.sh脚本?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40645572/