Требования: Протестировал функцию полнотекстового поиска SQL SERVER и обнаружил, что SQL SERVER 2022, установленный на Docker, по умолчанию не имеет полнотекстового поиска, поэтому требуется ручная установка.
Чтобы проверить, установлен ли FTS, сделайте следующее:
Если установки нет, создайте новый файл Dockerfile, чтобы восстановить образ, который гласит:
Описание параметра:
Корень пользователя Первый шаг в Dockerfile — настроить пользователя. Обычно это переопределяет набор пользователя в родительском образе. В этом примере пользователь настроен на root. Это важно для установки пакета mssql-server-fts и предоставления прав на запись в папке исходного числа apt. RUN apt-get update После настройки пользователя запустите apt-get update, чтобы обновить индекс пакета и убедиться, что у вас есть последняя версия пакета. RUN apt-get install -yq curl apt-transport-https gnupg На этом этапе устанавливаются пакеты curl, apt-transport-https и gnupg. Это те пакеты, которые необходимы для связи с репозиторием Microsoft. БЕГИ кёрлингhttps://packages.microsoft.com/keys/microsoft.asc| Apt-Key Add - & Curlhttps://packages.microsoft.com/c ... ql-server-2022.list| tee /etc/apt/sources.list.d/mssql-server-2022.list На этом этапе мы скачаем и установим ключ репозитория Microsoft, что важно для следующего шага. Мы также создадим файл mssql-server-2022.list и скопируем его в каталог /etc/apt/sources.list.d/. Это делается для включения установки пакетов из репозитория Microsoft. RUN apt-get update После добавления репозитория Microsoft снова запустите apt-get update, чтобы обновить индекс пакетов через репозиторий Microsoft. RUN apt-get install -y mssql-server-fts Этот шаг устанавливает функцию полнотекстового поиска для установки необходимого пакета mssql-server-fts. RUN apt-get clean && rm -rf /var/lib/apt/lists/* Этот шаг очищает все ненужные пакеты, чтобы освободить место на диске. Он удаляет все неиспользованные пакеты. Это важный шаг для поддержания размера изображения в Docker небольшим. USER mssql После очистки неиспользованных пакетов мы переключаем пользователя на mssql. Это пользователь, используемый для запуска процесса SQL Server. Важно убедиться, что пользователь не работает в root, чтобы избежать проблем с безопасностью. EXPOSE 1433 На этом этапе открывается порт 1433, который является стандартным портом SQL Server. Это важно для обеспечения доступа из других контейнеров и хостов. CMD ["/opt/mssql/bin/sqlservr"] Этот шаг задаёт стандартную команду для контейнера для запуска процесса SQL Server. Если мы хотим запустить контейнер для запуска других процессов, нужно настроить его здесь с помощью команды CMD.
Выполните команду для создания нового образа следующим образом:
Как показано ниже:
Исходя из нового изображения, запустите docker-контейнер, как показано ниже:
(Конец)
|