我有以下问题:我有以下docker-compose文件
version: "3"
services:
web:
build: .
ports:
- "8000:80"
links:
- my-special-db
networks:
- demo-net
my-special-db:
image: "microsoft/mssql-server-windows-developer"
ports:
- "1433:1433"
environment:
- ACCEPT_EULA=Y
- sa_password=demo
networks:
- demo-net
networks:
demo-net:
driver: nat
在appsettings.Docker.json中,我具有以下连接字符串:“ ConnectionStrings”:{“ DefaultConnection”:“ Server = my-special-db; Database = ContosoUniversity3; Trusted_Connection = True; MultipleActiveResultSets = true”} >
我也尝试过传递密码,它不起作用。 我在做什么错了?
答案 0 :(得分:1)
您需要将两个服务都添加到一个公共网络中。
请重做此文档:Docker Networks
在您的每项服务中:
networks:
- sql-net
在撰写文件的末尾:
networks:
sql-net:
driver: bridge
然后,您将可以通过容器名称(my-special-db
OP报告的错误表明它正在运行Windows 10。here有一个未解决的错误
有些报告显示使用transparent
驱动程序可能会起作用:
networks:
sql-net:
driver: transparent
您也可以尝试使用旧版Link feature。将其添加到web
容器中:
web:
links:
- my-special-db