最新版本的(应该是 SQL Server 2019) mssql-tools 镜像的 Dockerfile

唔,官方版本的 mssql-tools 镜像好像好久没更新了(https://hub.docker.com/_/microsoft-mssql-tools),用起来有一些bug,在此根据官方 Dockerfile 修改生成最新版本的镜像:

复制代码
# SQL Server Command Line Tools
FROM ubuntu:20.04

LABEL maintainer="SQL Server Engineering Team"

# apt-get and system utilities
RUN apt-get update && apt-get install -y \
    curl apt-transport-https debconf-utils gnupg2 \
    && rm -rf /var/lib/apt/lists/*

# adding custom MS repository
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

# install SQL Server drivers and tools
RUN apt-get update && ACCEPT_EULA=Y apt-get install -y msodbcsql17 mssql-tools
RUN echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
RUN /bin/bash -c "source ~/.bashrc"



RUN apt-get -y install locales
RUN locale-gen zh_CN.UTF-8
RUN update-locale LANG=zh_CN.UTF-8



CMD /bin/bash
复制代码

复制下来,保存为 Dockerfile 文件,执行编译命令:docker build . -t xxx 就可以获得最新版本的 mssql-tools 镜像了。

简单的使用命令记录:

1、使用容器(用完即删,同时映射一个 sql 目录便于执行批量脚本):

docker run -it --rm \
-v /home/sql:/home/sql \
--name=mssql-tools docker-registry.yourserver.com/mssql-tools

2、连接数据库

sqlcmd -S 10.10.10.10 -U username -P password

3、批量执行脚本(-e 参数可以输出执行的脚本内容)

sqlcmd -S 10.10.10.10 -U username -P password -d dbname -i filename.sql -e
posted @   不是豆豆  阅读(568)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2013-04-23 学习使用Bing Maps Silverlight Control(六):自定义“鹰眼”地图
友情链接:迷途


点击右上角即可分享
微信分享提示