所以這裏是一個Dockerfile。 https://hub.docker.com/r/kartoza/postgis/~/dockerfile/Docker知道在何處從構建Dockerfile時拉動.sh腳本?
我想在我使用這個多克爾 - 撰寫像這樣:
postgres:
restart: always
image: kartoza/postgis:9.4-2.1
ports:
- "5432:5432"
我的問題是,如果你回到那個鏈接,並期待在Dockerfile,在它運行的最底層start_postgres.sh和其他一些sh腳本。 docker如何知道從哪裏拉出這些sh腳本?我知道有一個有腳本的Kartoza/postgis github repo,但是在Dockerfile或docker-composose中沒有任何地方可以提供或指向GitHub repo,所以我完全搞不清這些腳本從何處被取消運行我的docker-compose。
卷:
- pgdata:/var/lib/postgresql/data/
絕對正確! – Tuan
也許我不瞭解Docker的一些基礎知識。所以在我的docker-compose上面,究竟是'image'如果不僅僅是Docker Hub的Dockerfile?當我執行docker-compose構建,然後構建時,它沒有問題,postgres正在運行。 – david
它從Docker Hub中提取完整映像。閱讀[image](https://docs.docker.com/compose/compose-file/#/image)和[build](https://docs.docker.com/compose/compose-file/#/構建)docker-compose文檔中的說明。如果你想擴展一個已經存在的圖像,可以使用'build';如果你只是想使用一個已經存在的圖像,可以使用'image'。 –