none
在 Windows Server 2016 中使用容器的技術問題 RRS feed

  • 問題

  • 新手發問

    我使用 在 Windows Server 2016 中使用容器技術 + docker-compose.yml,建構 2 - tier 的 Web 應用程式。很奇妙的是 web 一直找不到 db。

    直到手動在 web 下 ping DbServer,Web 才能順利連到 DbServer.

    有人有解嗎?

    docker-compose.yml 如下

    version: '2.1'
    services:
      DbServer:
    	image: microsoft/mssql-server-2014-express-windows
    	environment:
    	  sa_password: "Passw0rd"
    	  attach_dbs: "[{'dbName':'Demo','dbFiles':['C:\\\\db\\\\demo.mdf','C:\\\\db\\\\demo.ldf']}]"
    	ports:
    	  - "1433:1433" # REMARK: This is currently required, needs investigation
    	volumes:
    	  - "C:/db/:C:/db/"
    
      web:
    	build:
    	  context: .
    	depends_on:
    	  - "DbServer"
    	ports:
    	  - "80:80"
    
    networks:
      default:
    	external:
    	  name: nat

    連到網站,會有找不到資料庫的錯誤。

    再下一次 docker exec -it webContainerName ping DbServer

    網站才能順利讀取到資料庫。



    • 已編輯 AskaSuModerator 2016年12月26日 上午 09:50 修改過長標題,原始標題: 在 Windows Server 2016 中使用容器技術 + docker-compose.yml,Web 找不到 Db
    2016年12月26日 上午 08:41