如何将bacpac文件恢复到SQL Server Linux docker容器?

时间:2018-01-23 13:07:26

标签: sql-server linux docker docker-compose sql-server-linux

我正在尝试为Docker设置集成测试环境。我们需要将bacpac恢复为mssql-server-linux:latest图像,以便我们可以根据数据集运行测试。

我的撰写文件如下:

version: '3'

services:
    projectweb:
        image: projectweb
        build:
            context: .
            dockerfile: Project\Dockerfile
        depends_on:
            - db
    db:
        image: "microsoft/mssql-server-linux"
        environment:
            SA_PASSWORD: "MyVerySecurePassword"
            ACCEPT_EULA: "Y"        
        volumes:
            - ./database:/tmp

我不需要在容器的生命周期内持久保存对数据库的更改。我只需要脚本获取数据。我对docker或SQL Server for Linux没有太多经验。我假设我需要等待容器初始化和数据库设置并启动,然后执行从tmp文件夹读取数据库bacpac的脚本。据我所知,我应该使用sqlpackage,但这不是appear to be in the container?我需要另一个带有这个SSDT / sqlpackage的容器吗?我可以将splpackage安装到容器中吗?

导入bacpac数据的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

此问题现已解决。 Microsoft具有适用于Linux的适当sql软件包。可以将其安装到自定义映像中。 https://docs.microsoft.com/en-us/sql/tools/sqlpackage?view=sql-server-2017