2017-04-20 65 views
0

我是新來泊塢窗,我使用泊塢窗撰寫。出於某種原因,我的Postgres的容器現在分成如何重新泊塢容器?

我想這個命令docker-compose up --no-deps --build db

而且這回我:

MacBook-Pro-de-Javier:goxo.api javier$ docker-compose up --no-deps --build db 
Recreating testapi_db_1 
Attaching to testapi_db_1 
db_1 | LOG: database system was shut down at 2017-04-20 17:19:05 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 

每當我嘗試連接(使用相同的連接arguemnts比以前)我得到這樣的:

^[[Adb_1 | FATAL: database "test" does not exist 

這是我的泊塢窗,compose.yml的一部分

version: "3" 
services: 
    db: 
    image: postgres 
    ports: 
     - "3700:5432" 
    environment: 
     POSTGRES_HOST: "127.0.0.1" 
     POSTGRES_DB: "test" 
     POSTGRES_USER: "postgres" 
     POSTGRES_PASSWORD: "postgres1" 
    tmpfs: 
     - /tmp 
     - /var/run/postgresql 
    volumes: 
     - db:/var/lib/postgresql/data 
     - ./config/postgres-initdb.sh:/docker-entrypoint-initdb.d/initdb.sh 

我如何能重新泊塢窗圖像的任何想法是怎麼回事之前?這是工作,因爲它是第一次創建

感謝

編輯1:如果我運行docker-compose build && docker-compose up

終端拋出這個:

db uses an image, skipping 

編輯2:此命令不會再創建數據庫既不:

docker-compose up --force-recreate --abort-on-container-exit --build db 
+2

只是對您的問題的一個附註:您必須知道帶數據庫的容器必須僅用於測試目的而創建。這只是解釋原因的許多文章之一:https://myopsblog.wordpress.com/2017/02/06/why-databases-is-not-for-containers/ –

回答

0

你試圖重建單的Postgres CON TAINER?

docker build -t <postgrescontainer> 

或搬運工-撰寫:

docker-compose up --build 

來重新創建圖像,而不是使用舊的 '使用' 的。

0

你可以看看你的系統上的圖像與

docker images

應該表現出你的圖像,然後

docker history --no-trunc your_image

應該表現出用於創建命令圖像

這是我的不足,當你看到這樣的

ADD * /opt

你不知道被複制到底哪個文件,並放入系統文件包含什麼

還有dockerfile,從圖像

https://github.com/CenturyLinkLabs/dockerfile-from-image

這似乎有最近的錯誤(我不知道這是否是固定的)