从Linux Docker容器连接到远程MSSQL DB



我有一个构建的Linux Docker容器,构建了 Microsoft/MSSQL-Server-linux/ Image。该容器目前没有任何内容,我试图连接到Windows Server上某个地方托管的远程MSSQL DB。我不确定我该怎么做。

Microsoft/MSSQL-Server-Linux/没有提供很多详细信息的文档。任何帮助,将不胜感激。

更新:我现在有容器工作。但是,如果我尝试通过bash脚本创建和播种DB,则容器将被代码0退出。

这是 docker文件&docker-compose 文件

version: '2'
services:
  db:
    build: .
    ports:
      - "1433:1433"
    environment:
        ACCEPT_EULA: Y
        SA_PASSWORD: Password
        PATH: /opt/mssql-tools/bin:/opt/mssql/bin:$PATH
    container_name: db
FROM microsoft/mssql-server-linux:latest
EXPOSE 1433
RUN echo $PATH
RUN mkdir -p /usr/src/app
COPY ./db/* /usr/src/app/
WORKDIR /usr/src/app
RUN ls
RUN chmod +x /usr/src/app/dbInit.sh
RUN chmod +x /usr/src/app/dbSeed.sh
CMD /bin/bash ./entrypoint.sh

这是我的 entrypoint.sh

/opt/mssql/bin/sqlservr & /usr/src/app/dbInit.sh

dbinit.sh 包含SQLScripts创建db,一些表和播种。这样的东西。

sqlcmd -S localhost -U SA -P password -d master -Q "CREATE DATABASE dbo"

码头组合 - 建造成功地创建了DB,表和种子。但是容器被代码0退出。似乎SQL Server IT自我已关闭。

文档很清楚。.请参阅 connect and查询有关更多详细信息

1.首先,您必须安装SQLCMD工具,因为它们不是自动安装的

  • 导入公共存储库GPG密钥。

curl https://packages.microsoft.com/keys/microsoft.asc |sudo apt -key add-

  • 注册Microsoft Ubuntu存储库

curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list |sudo tee/etc/apt/sources.list.d/msprod.list

  • 更新源列表并使用UnixoDBC开发器软件包运行安装命令。

sudo apt-get更新 sudo apt-get安装mssql-tools unixoDBC-dev

您可以在此处查看进一步的增强:在Ubuntu上安装工具

现在您可以像下面的

一样查询

对于本地:

sqlcmd -s localhost -u sa -p''

对于远程:

sqlcmd -s 192.555.5.555 -u sa -p''

相关内容

  • 没有找到相关文章

最新更新