使用带有全文搜索支持的 docker 安装 MSSQL 服务器 express
Posted
技术标签:
【中文标题】使用带有全文搜索支持的 docker 安装 MSSQL 服务器 express【英文标题】:Installing MSSQL server express using docker with full text search support 【发布时间】:2020-03-02 13:23:46 【问题描述】:我在 docker 上为 ubuntu 使用 mssql express。我刚刚发现它不支持全文搜索。我相信 mssql express 支持这一点,但找不到启用此功能的方法。
这是我正在使用的图像。
图片:mcr.microsoft.com/mssql/server:2017-latest-ubuntu
我将快速版作为 MSSQL_PID: "Express" 的环境传递。
如何在同一张图片上安装全文搜索?
【问题讨论】:
“我刚刚发现它不支持全文搜索。” 全文搜索在SQL Server 2017的所有版本上都可用;包括那些在 Linux 上的。 但是使用docker镜像的时候,没有安装这个功能?我们如何安装它? 默认图片没有启用,没有。您需要修改命令行参数以启用全文搜索,然后构建您自己的图像。 【参考方案1】:默认的mssql docker镜像不支持fts,即全文搜索,所以我们需要创建自定义的sql镜像。
这是相同的 dockerfile... 基于 microsoft repo at https://github.com/Microsoft/mssql-docker/blob/master/linux/preview/examples/mssql-agent-fts-ha-tools/Dockerfile
# Maintainers: Microsoft Corporation (twright-msft on GitHub)
# GitRepo: https://github.com/Microsoft/mssql-docker
# Base OS layer: Latest Ubuntu LTS
FROM ubuntu:16.04
# Install prerequistes since it is needed to get repo config for SQL server
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
apt-get install -yq curl apt-transport-https && \
# Get official Microsoft repository configuration
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list | tee /etc/apt/sources.list.d/mssql-server.list && \
apt-get update && \
# Install SQL Server from apt
apt-get install -y mssql-server && \
# Install optional packages
apt-get install -y mssql-server-ha && \
apt-get install -y mssql-server-fts && \
# Cleanup the Dockerfile
apt-get clean && \
rm -rf /var/lib/apt/lists
# Run SQL Server process
CMD /opt/mssql/bin/sqlservr
【讨论】:
以上是关于使用带有全文搜索支持的 docker 安装 MSSQL 服务器 express的主要内容,如果未能解决你的问题,请参考以下文章
docker 下载安装Elasticsearch——网络超时解决办法(net/http: TLS handshake timeout)