Published on

February 1, 2021

Использование Docker на Mac для сохранения постоянных настроек и баз данных SQL Server

Устали терять данные и настройки SQL Server каждый раз, когда пересоздаете контейнер Docker? У меня есть простое решение для вас! Путем примонтирования томов, которые SQL Server использует для хранения системных и пользовательских баз данных, к папке на вашем локальном диске, вы можете сохранить все ваши данные и настройки, даже если удалите контейнер.

Прежде чем мы начнем, убедитесь, что у вас установлен Docker на вашем локальном компьютере и настроен для использования контейнеров Linux. Если вы еще не установили Docker, вы можете найти инструкции по установке здесь.

После установки Docker следуйте этим шагам для настройки вашего контейнера SQL Server:

  1. Создайте папку на вашем локальном компьютере, которую вы будете отображать на ваш контейнер. Вы можете выбрать любое имя для папки.
  2. Откройте Терминал на вашем Mac и выполните следующую команду:
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=thisisastrongpassw0rd!' -p 1434:1433 --name sql2019u -v /path/to/your/folder:/var/opt/mssql/data -v /path/to/your/folder/secrets:/var/opt/mssql/secrets -d mcr.microsoft.com/mssql/server:2019-latest

Давайте разберем эту команду:

  • docker run – стандартный способ запуска контейнера Docker
  • -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=thisisastrongpassw0rd!' – принимает лицензионное соглашение и устанавливает пароль SA
  • -p 1434:1433 – отображает порт хоста 1434 на порт контейнера 1433
  • --name sql2019u – называет контейнер
  • -v /path/to/your/folder:/var/opt/mssql/data – отображает папку хоста на директорию данных контейнера
  • -v /path/to/your/folder/secrets:/var/opt/mssql/secrets – отображает папку хоста на директорию секретов контейнера
  • -d – создает контейнер в фоновом режиме
  • mcr.microsoft.com/mssql/server:2019-latest – получает последнее изображение SQL Server 2019

После настройки контейнера вы можете подключиться к нему с помощью SQL-клиентского инструмента, такого как DBeaver. Если у вас нет установленного DBeaver, вы можете скачать его здесь.

Чтобы подключиться к вашему контейнеру Docker в DBeaver, выполните следующие шаги:

  1. Откройте DBeaver и выберите добавление нового подключения к базе данных.
  2. Выберите SQL Server в качестве типа базы данных.
  3. Введите информацию для вашего контейнера Docker.
  4. Если вам будет предложено, загрузите драйвер SQL Server.
  5. После установки драйвера вы увидите ваше подключение к базе данных в левой панели.
  6. Щелкните правой кнопкой мыши на подключении и выберите “Изменить подключение”, чтобы дать ему более идентифицирующее имя.
  7. Нажмите OK и выберите Да, когда будет предложено переподключиться.

Теперь вы можете начать использовать ваш контейнер Docker со всеми вашими данными и настройками. Но что, если вы удалите контейнер? Не волнуйтесь, вы легко можете восстановить ваши данные и настройки.

Чтобы удалить контейнер, выполните следующие команды в Терминале:

docker stop sql2019u
docker rm sql2019u

После удаления контейнера вы можете воссоздать его, используя ту же команду docker run, что и раньше. Просто убедитесь, что вы не удалили папку на вашем компьютере, которая отображается на контейнер.

Вот и все! С помощью этой простой настройки вы можете иметь постоянные настройки SQL Server и базы данных с использованием Docker на вашем Mac. Больше не потеряете данные при пересоздании контейнеров. Удачного кодирования!

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.