You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker(Ubuntu)部署SQL Server 2022+FTS失败:找不到mssql-server-fts包

解决SQL Server 2022 Ubuntu容器安装全文搜索(FTS)时找不到包的问题

出现E: Unable to locate package mssql-server-fts错误的核心原因是:默认SQL Server Ubuntu镜像的apt源未包含全文搜索包,需要先添加微软官方的SQL Server源并更新缓存。以下是具体解决步骤:

1. 修正Dockerfile,添加官方源并安装FTS

创建正确的Dockerfile.new,基于官方SQL Server 2022镜像,先配置微软源、更新apt索引,再安装FTS包:

# 基于官方SQL Server 2022 Ubuntu镜像
FROM mcr.microsoft.com/mssql/server:2022-latest

# 切换为root用户执行安装操作
USER root

# 添加微软SQL Server Ubuntu源
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
    && curl https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2022.list > /etc/apt/sources.list.d/mssql-server.list

# 更新apt缓存并安装全文搜索包
RUN apt-get update \
    && apt-get install -y --no-install-recommends mssql-server-fts \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# 切换回mssql用户
USER mssql

2. 配置docker-compose.yml关联自定义镜像

确保docker-compose.yml中使用上述Dockerfile构建镜像:

version: '3.8'
services:
  sqlserver:
    build:
      context: .
      dockerfile: Dockerfile.new
    environment:
      - ACCEPT_EULA=Y
      - SA_PASSWORD=YourStrongPassword123!
    ports:
      - "1433:1433"
    volumes:
      - sqlserver_data:/var/opt/mssql

volumes:
  sqlserver_data:

3. 重新构建并部署容器

执行以下命令清理旧容器、重新构建镜像并启动:

docker-compose down
docker-compose up -d --build

4. 验证FTS安装

容器启动后,连接SQL Server执行以下语句,返回1则表示安装成功:

SELECT FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')

内容的提问来源于stack exchange,提问作者ZedZip

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 15:27:03