在docker compose中使用https://github.com/kiasaki/docker-alpine-postgres圖像時,當我從日誌中查看時,/docker-entrypoint.initdb.d中的腳本未被執行:docker alpine postgres組成不執行docker-entrypoint-initdb.d腳本
db_1 | LOG: database system was shut down at 2016-09-05 18:16:02 UTC
db_1 | LOG: MultiXact member wraparound protections are now enabled
db_1 | LOG: database system is ready to accept connections
db_1 | LOG: autovacuum launcher started
的事情是,如果我建Dockerfile獨立和運行容器,它將執行文件夾內的SQL文件,比如你可以從日誌中看到:
waiting for server to start....LOG: database system was shut down at 2016-09-05 18:28:18 UTC
LOG: MultiXact member wraparound protections are now enabled
LOG: database system is ready to accept connections
LOG: autovacuum launcher started
done
server started
/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/syna-setup.sql
CREATE TABLE
INSERT 0 1
CREATE TABLE
waiting for server to shut down...LOG: received fast shutdown request
.LOG: aborting any active transactions
LOG: autovacuum launcher shutting down
LOG: shutting down
LOG: database system is shut down
done
server stopped
LOG: database system was shut down at 2016-09-05 18:28:21 UTC
LOG: MultiXact member wraparound protections are now enabled
LOG: database system is ready to accept connections
LOG: autovacuum launcher started
LOG: received fast shutdown request
LOG: aborting any active transactions
LOG: autovacuum launcher shutting down
LOG: shutting down
LOG: database system is shut down
泊塢窗,撰寫.yml:
version: '2'
services:
db:
build: ./db
environment:
- POSTGRES_PASSWORD=testpass
restart: always
app:
build: ./app
ports:
- "5000:5000"
volumes:
- .:/app/src
depends_on:
- db
environment:
- DB_SERVER=postgres://postgres:[email protected]:5432/postgres
我在這裏做錯了什麼?
構建和運行命令看起來像是 'docker build -t postgres。 &&碼頭運行postgres'。 DB的Dockerfile已經將文件傳輸,像這樣的部分: 'FROM kiasaki /高山Postgres的:最新 COPY泊塢窗,入口點,initdb.d /docker-entrypoint-initdb.d CMD [ 「的Postgres」 ]' – Techradar
哦,你可以試着重寫'''ENTRYPOINT'''嗎?我編輯了我的答案。 – Tuan
非常感謝!而已! 只需要修復環境變量,因爲沒有默認設置,但環境支撐很容易。 – Techradar