2017-05-21 131 views
1

我正在嘗試本教程。教程:Creating a multi-container deployment with Docker Compose and IBM Bluemix Container Servicedocker-compose to Bluemix Failed。 「TypeError:字符串索引必須是整數」

但是,發生錯誤,我無法理解它是什麼意思。請告訴我什麼是錯的。

版本:

OS: macOS Sierra 
bx version 0.5.3+e1de255-2017-05-17T04:07:46+00:00 
Docker version 17.03.1-ce, build c6d412e 
docker-compose version 1.11.2, build dfed245 

環境變量:

DOCKER_HOST=tcp://containers-api.ng.bluemix.net:8443 
DOCKER_CERT_PATH=/Users/{myname}/.ice/certs/containers-api.ng.bluemix.net/****** 
DOCKER_TLS_VERIFY=1 

搬運工-compose.yml

lets-chat: 
    image: registry.ng.bluemix.net/hiroga/lets-chat 
    ports: 
    - "8080" 
    links: 
    - mongo 
mongo: 
    image: registry.ng.bluemix.net/hiroga/mongo 
    expose: 
    - "27017" 

錯誤

$ docker-compose --verbose up 
compose.config.config.find: Using configuration files: ./docker-compose.yml 

~~~~~~~~~~ 

compose.parallel.feed_queue: Pending: set([]) 
compose.parallel.parallel_execute_iter: Failed: <Service: lets-chat> 
compose.parallel.feed_queue: Pending: set([]) 

ERROR: for lets-chat string indices must be integers 
Traceback (most recent call last): 
    File "docker-compose", line 3, in <module> 
    File "compose/cli/main.py", line 64, in main 
    File "compose/cli/main.py", line 116, in perform_command 
    File "compose/cli/main.py", line 876, in up 
    File "compose/project.py", line 416, in up 
    File "compose/parallel.py", line 66, in parallel_execute 
TypeError: string indices must be integers 
Failed to execute script docker-compose 

歡迎任何解決方案或提示。謝謝。

回答

0

在輸出中是否有可能暗示實際錯誤的東西? (在最後一串compose.parallel.feed_queue: Pending: set([])消息之前,也許呢?)

仔細檢查圖像名稱(與bx ic images比較,包括版本,如果它不是latest)。

其他可能性 - 如果上面說的最後消息是不是feed_queue正在處理docker attachdocker start,然後部署實際上可能是成功的,但碼頭工人,撰寫是多久它默認爲等待十分樂觀。您可以嘗試使用export COMPOSE_HTTP_TIMEOUT=300或類似的方法來緩衝超時時間,從而使其能夠處理遠程服務器更多的耐心。

如果您使用docker ps -a和​​進行檢查,那麼是否顯示實際容器是否已啓動?

相關問題