【问题标题】:Connect to SQL Server on Linux (docker) using SQL Management Studio使用 SQL Management Studio 连接到 Linux (docker) 上的 SQL Server
【发布时间】:2017-05-30 08:15:55
【问题描述】:

如何连接到我使用 docker 在 Linux 上创建的 SQL Server?

这是我的 Dockerfile:

FROM microsoft/aspnetcore:1.1.2
ARG source
WORKDIR /var/www/aspnetcoreapp
EXPOSE 80
COPY ${source:-obj/Docker/publish} .
ENTRYPOINT ["dotnet", "AspNetCoreWithSqlOnDocker.dll"]

还有我的 docker-compose:

version: '2.1'

services:
  mssql:
    image: "microsoft/mssql-server-linux"
    environment:
      SA_PASSWORD: "p@ssw0rd1"
      ACCEPT_EULA: "Y"
    ports:
      - 1533:1533
    networks:
      - mynetwork

  aspnetcorewithsqlondocker:
    image: aspnetcorewithsqlondocker
    ports:
      - 5001:80
    build:
      context: ./AspNetCoreWithSqlOnDocker
      dockerfile: Dockerfile
    links:
      - mssql
    depends_on:
      - mssql
    networks:
      - mynetwork

networks:
  mynetwork:
     driver: bridge

在这里你可以找到我的 docker 图片:

【问题讨论】:

    标签: sql-server linux docker asp.net-core docker-compose


    【解决方案1】:

    如果您想在 docker-compose 中连接两个容器,则基础服务必须公开端口。而需要调用暴露容器的应用程序必须如下所示:

    version: '2.1'
    
    services:
      mssql:
        expose:
          - 1533
    
      aspnetcorewithsqlondocker:
        links:
          - mssql
    

    连接的定义必须是:

    HOST: mssql
    PORT: 1533
    

    顺便说一句,除非你想访问容器外,否则你不必将端口暴露在外面。

    【讨论】:

      猜你喜欢
      • 2017-06-07
      • 1970-01-01
      • 2021-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-14
      • 1970-01-01
      相关资源
      最近更新 更多