Устали терять данные и настройки SQL Server каждый раз, когда пересоздаете контейнер Docker? У меня есть простое решение для вас! Путем примонтирования томов, которые SQL Server использует для хранения системных и пользовательских баз данных, к папке на вашем локальном диске, вы можете сохранить все ваши данные и настройки, даже если удалите контейнер.
Прежде чем мы начнем, убедитесь, что у вас установлен Docker на вашем локальном компьютере и настроен для использования контейнеров Linux. Если вы еще не установили Docker, вы можете найти инструкции по установке здесь.
После установки Docker следуйте этим шагам для настройки вашего контейнера SQL Server:
- Создайте папку на вашем локальном компьютере, которую вы будете отображать на ваш контейнер. Вы можете выбрать любое имя для папки.
- Откройте Терминал на вашем 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, выполните следующие шаги:
- Откройте DBeaver и выберите добавление нового подключения к базе данных.
- Выберите SQL Server в качестве типа базы данных.
- Введите информацию для вашего контейнера Docker.
- Если вам будет предложено, загрузите драйвер SQL Server.
- После установки драйвера вы увидите ваше подключение к базе данных в левой панели.
- Щелкните правой кнопкой мыши на подключении и выберите “Изменить подключение”, чтобы дать ему более идентифицирующее имя.
- Нажмите OK и выберите Да, когда будет предложено переподключиться.
Теперь вы можете начать использовать ваш контейнер Docker со всеми вашими данными и настройками. Но что, если вы удалите контейнер? Не волнуйтесь, вы легко можете восстановить ваши данные и настройки.
Чтобы удалить контейнер, выполните следующие команды в Терминале:
docker stop sql2019u
docker rm sql2019uПосле удаления контейнера вы можете воссоздать его, используя ту же команду docker run, что и раньше. Просто убедитесь, что вы не удалили папку на вашем компьютере, которая отображается на контейнер.
Вот и все! С помощью этой простой настройки вы можете иметь постоянные настройки SQL Server и базы данных с использованием Docker на вашем Mac. Больше не потеряете данные при пересоздании контейнеров. Удачного кодирования!