Краткое руководство. Запуск образов контейнеров SQL Server в DockerQuickstart: Run SQL Server container images with Docker

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server (только в Linux) нетБаза данных SQL Azure нетAzure Synapse Analytics (хранилище данных SQL) нетParallel Data Warehouse APPLIES TO: yesSQL Server (Linux only) noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Это краткое руководство описывает использование Docker для извлечения и запуска образа контейнера SQL Server 2017, mssql-server-linux.In this quickstart, you use Docker to pull and run the SQL Server 2017 container image, mssql-server-linux. Затем мы подключимся при помощи sqlcmd для создания первой базы данных и выполнения запросов.Then connect with sqlcmd to create your first database and run queries.

Совет

Если вы предпочитаете выполнять контейнеры SQL Server 2019, см. вариант этой статьи для SQL Server 2019.If you want to run SQL Server 2019 containers, see the SQL Server 2019 version of this article.

Это краткое руководство описывает использование Docker для извлечения и запуска образа контейнера SQL Server 2019, mssql-server.In this quickstart, you use Docker to pull and run the SQL Server 2019 container image, mssql-server. Затем мы подключимся при помощи sqlcmd для создания первой базы данных и выполнения запросов.Then connect with sqlcmd to create your first database and run queries.

Совет

В этом кратком руководстве создаются контейнеры SQL Server 2019.This quickstart creates SQL Server 2019 containers. Если вы предпочитаете создавать контейнеры SQL Server 2017, см. вариант этой статьи для SQL Server 2017.If you prefer to create SQL Server 2017 containers, see the SQL Server 2017 version of this article.

Этот образ содержит SQL Server, работающий в системе Linux, основанной на Ubuntu 16.04.This image consists of SQL Server running on Linux based on Ubuntu 16.04. Он может использоваться с Dосker Engine 1.8+ на Linux или Docker для Mac или Windows.It can be used with the Docker Engine 1.8+ on Linux or on Docker for Mac/Windows. В этом кратком руководстве особое внимание уделяется использованию SQL Server на базе образа linux.This quickstart specifically focuses on using the SQL Server on linux image. Образ с Windows не рассматривается, но сведения о нем вы можете найти на странице mssql-server-windows-developer центра Docker.The Windows image is not covered, but you can learn more about it on the mssql-server-windows-developer Docker Hub page.

Предварительные требованияPrerequisites

Извлечение и запуск образа контейнераPull and run the container image

Перед выполнением следующих действий убедитесь, что вы выбрали предпочтительную оболочку (Bash, PowerShell или CMD) в начале этой статьи.Before starting the following steps, make sure that you have selected your preferred shell (bash, PowerShell, or cmd) at the top of this article.

  1. Извлеките образ контейнера SQL Server 2017 на базе Linux из Реестра контейнеров Майкрософт.Pull the SQL Server 2017 Linux container image from Microsoft Container Registry.

    sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
    
    docker pull mcr.microsoft.com/mssql/server:2017-latest
    
    docker pull mcr.microsoft.com/mssql/server:2017-latest
    

    Совет

    Если вы предпочитаете выполнять контейнеры SQL Server 2019, см. вариант этой статьи для SQL Server 2019.If you want to run SQL Server 2019 containers, see the SQL Server 2019 version of this article.

    Предыдущая команда извлекает последнюю версию образа контейнера с SQL Server 2017.The previous command pulls the latest SQL Server 2017 container image. Если вы хотите извлечь конкретный образ, добавьте метку после двоеточия (например, mcr.microsoft.com/mssql/server:2017-GA-ubuntu).If you want to pull a specific image, you add a colon and the tag name (for example, mcr.microsoft.com/mssql/server:2017-GA-ubuntu). Список всех доступных образов см. на странице mssql-server Docker Hub.To see all available images, see the mssql-server Docker hub page.

    Для команд Bash в этой статье используется sudo.For the bash commands in this article, sudo is used. В MacOS sudo может не потребоваться.On MacOS, sudo might not be required. В Linux, если вы не хотите использовать sudo для запуска Docker, можно настроить группу docker и добавить в нее пользователей.On Linux, if you do not want to use sudo to run Docker, you can configure a docker group and add users to that group. Дополнительные сведения см. в статье Действия после установки для Linux.For more information, see Post-installation steps for Linux.

  2. Чтобы запустить образ контейнера с помощью Docker, выполните следующую команду в оболочке bash (Linux или macOS) или в командной строке PowerShell с повышенными привилегиями.To run the container image with Docker, you can use the following command from a bash shell (Linux/macOS) or elevated PowerShell command prompt.

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
       -p 1433:1433 --name sql1 \
       -d mcr.microsoft.com/mssql/server:2017-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" `
       -p 1433:1433 --name sql1 `
       -d mcr.microsoft.com/mssql/server:2017-latest
    
    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" `
       -p 1433:1433 --name sql1 `
       -d mcr.microsoft.com/mssql/server:2017-latest
    

    Примечание

    Пароль должен удовлетворять политике паролей SQL Server по умолчанию; в противном случае контейнер не сможет настроить SQL Server и прекратит работу.The password should follow the SQL Server default password policy, otherwise the container can not setup SQL server and will stop working. По умолчанию пароль должен состоять не менее чем из восьми символов и содержать символы как минимум трех из четырех наборов: прописные и строчные буквы, 10 основных цифр и специальные символы.By default, the password must be at least 8 characters long and contain characters from three of the following four sets: Uppercase letters, Lowercase letters, Base 10 digits, and Symbols. Проверить журнал ошибок можно, выполнив команду docker logs.You can examine the error log by executing the docker logs command.

    Примечание

    По умолчанию она создаст контейнер с выпуском SQL Server 2017 Developer.By default, this creates a container with the Developer edition of SQL Server 2017. Процесс запуска контейнера с производственными выпусками немного отличается.The process for running production editions in containers is slightly different. Дополнительные сведения см. в разделе Запуск образов контейнеров с производственными выпусками.For more information, see Run production container images.

    Следующая таблица содержит описание параметров запуска команды docker run из предыдущего примера.The following table provides a description of the parameters in the previous docker run example:

    ПараметрParameter ОписаниеDescription
    -e "ACCEPT_EULA=Y"-e "ACCEPT_EULA=Y" Присвойте переменной ACCEPT_EULA любое значение, чтобы подтвердить свое согласие с лицензионным соглашением.Set the ACCEPT_EULA variable to any value to confirm your acceptance of the End-User Licensing Agreement. Обязательный параметр для образа SQL Server.Required setting for the SQL Server image.
    -e "SA_PASSWORD=<YourStrong@Passw0rd\>"-e "SA_PASSWORD=<YourStrong@Passw0rd\>" Укажите свой надежный пароль длиной не меньше восьми символов, соответствующий требованиям к паролям в SQL Server.Specify your own strong password that is at least 8 characters and meets the SQL Server password requirements. Обязательный параметр для образа SQL Server.Required setting for the SQL Server image.
    -p 1433:1433-p 1433:1433 Сопоставление TCP-порта среды узла (первое значение) с TCP-портом в контейнере (второе значение).Map a TCP port on the host environment (first value) with a TCP port in the container (second value). В нашем примере SQL Server прослушивает TCP-порт 1433 в контейнере, который перенаправляется на порт 1433 на узле.In this example, SQL Server is listening on TCP 1433 in the container and this is exposed to the port, 1433, on the host.
    --name sql1--name sql1 Укажите свое имя для контейнера вместо сгенерированного случайным образом.Specify a custom name for the container rather than a randomly generated one. При запуске нескольких контейнеров использовать одинаковые имена запрещено.If you run more than one container, you cannot reuse this same name.
    -d mcr.microsoft.com/mssql/server:2017-latest-d mcr.microsoft.com/mssql/server:2017-latest Контейнер образа Linux с SQL Server 2017.The SQL Server 2017 Linux container image.
  3. Для просмотра ваших контейнеров Docker используйте команду docker ps.To view your Docker containers, use the docker ps command.

    sudo docker ps -a
    
    docker ps -a
    
    docker ps -a
    

    На следующем рисунке изображен примерный вывод команды.You should see output similar to the following screenshot:

    Вывод команды docker ps

  4. Если в столбце STATUS (состояние) отображается состояние Up (запущен), то SQL Server выполняется в контейнере и прослушивает порт, указанный в столбце PORTS (порты).If the STATUS column shows a status of Up, then SQL Server is running in the container and listening on the port specified in the PORTS column. Если в столбце STATUS контейнера с SQL Server отображается Exited (завершен), см.руководство Устранение неполадок конфигурации.If the STATUS column for your SQL Server container shows Exited, see the Troubleshooting section of the configuration guide.

Параметр -h (имя узла) может оказаться полезен, но для простоты в этом учебнике он не описывается.The -h (host name) parameter is also useful, but it is not used in this tutorial for simplicity. Он изменяет внутреннее имя контейнера на пользовательское значение.This changes the internal name of the container to a custom value. Это имя отображается при выполнении следующего запроса Transact-SQL.This is the name you'll see returned in the following Transact-SQL query:

SELECT @@SERVERNAME,
    SERVERPROPERTY('ComputerNamePhysicalNetBIOS'),
    SERVERPROPERTY('MachineName'),
    SERVERPROPERTY('ServerName')

Установка параметров -h и --name равными позволяет легко идентифицировать целевой контейнер.Setting -h and --name to the same value is a good way to easily identify the target container.

Извлечение и запуск образа контейнераPull and run the container image

Перед выполнением следующих действий убедитесь, что вы выбрали предпочтительную оболочку (Bash, PowerShell или CMD) в начале этой статьи.Before starting the following steps, make sure that you have selected your preferred shell (bash, PowerShell, or cmd) at the top of this article.

  1. Извлеките образ контейнера Linux с SQL Server 2019 из центра Docker.Pull the SQL Server 2019 Linux container image from Docker Hub.

    sudo docker pull mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    
    docker pull mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    
    docker pull mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    

    Совет

    В этом кратком руководстве используется образ Docker SQL Server 2019.This quickstart uses the SQL Server 2019 Docker image. Если вы хотите запустить образ SQL Server 2017, см. вариант этой статьи для SQL Server 2017.If you want to run the SQL Server 2017 image, see the SQL Server 2017 version of this article.

    Предыдущая команда извлекает образ контейнера SQL Server 2019 на основе Ubuntu.The previous command pulls the SQL Server 2019 container image based on Ubuntu. Чтобы вместо этого использовать образы контейнеров на основе RedHat, см. статью Запуск образов контейнеров на базе RHEL.To instead use container images based on RedHat, see Run RHEL-based container images. Список всех доступных образов см. на странице mssql-server-linux центра Docker.To see all available images, see the mssql-server-linux Docker hub page.

    Для команд Bash в этой статье используется sudo.For the bash commands in this article, sudo is used. В MacOS sudo может не потребоваться.On MacOS, sudo might not be required. В Linux, если вы не хотите использовать sudo для запуска Docker, можно настроить группу docker и добавить в нее пользователей.On Linux, if you do not want to use sudo to run Docker, you can configure a docker group and add users to that group. Дополнительные сведения см. в статье Действия после установки для Linux.For more information, see Post-installation steps for Linux.

  2. Чтобы запустить образ контейнера с помощью Docker, выполните следующую команду в оболочке bash (Linux или macOS) или в командной строке PowerShell с повышенными привилегиями.To run the container image with Docker, you can use the following command from a bash shell (Linux/macOS) or elevated PowerShell command prompt.

    sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
       -p 1433:1433 --name sql1 \
       -d mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    
    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" `
       -p 1433:1433 --name sql1 `
       -d mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    
    docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" `
       -p 1433:1433 --name sql1 `
       -d mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04
    

    Примечание

    Пароль должен удовлетворять политике паролей SQL Server по умолчанию; в противном случае контейнер не сможет настроить SQL Server и прекратит работу.The password should follow the SQL Server default password policy, otherwise the container can not setup SQL server and will stop working. По умолчанию пароль должен состоять не менее чем из восьми символов и содержать символы как минимум трех из четырех наборов: прописные и строчные буквы, 10 основных цифр и специальные символы.By default, the password must be at least 8 characters long and contain characters from three of the following four sets: Uppercase letters, Lowercase letters, Base 10 digits, and Symbols. Проверить журнал ошибок можно, выполнив команду docker logs.You can examine the error log by executing the docker logs command.

    Примечание

    По умолчанию она создаст контейнер с выпуском SQL Server 2019 Developer.By default, this creates a container with the Developer edition of SQL Server 2019.

    Следующая таблица содержит описание параметров запуска команды docker run из предыдущего примера.The following table provides a description of the parameters in the previous docker run example:

    ПараметрParameter ОписаниеDescription
    -e "ACCEPT_EULA=Y"-e "ACCEPT_EULA=Y" Присвойте переменной ACCEPT_EULA любое значение, чтобы подтвердить свое согласие с лицензионным соглашением.Set the ACCEPT_EULA variable to any value to confirm your acceptance of the End-User Licensing Agreement. Обязательный параметр для образа SQL Server.Required setting for the SQL Server image.
    -e "SA_PASSWORD=<YourStrong@Passw0rd\>"-e "SA_PASSWORD=<YourStrong@Passw0rd\>" Укажите свой надежный пароль длиной не меньше восьми символов, соответствующий требованиям к паролям в SQL Server.Specify your own strong password that is at least 8 characters and meets the SQL Server password requirements. Обязательный параметр для образа SQL Server.Required setting for the SQL Server image.
    -p 1433:1433-p 1433:1433 Сопоставление TCP-порта среды узла (первое значение) с TCP-портом в контейнере (второе значение).Map a TCP port on the host environment (first value) with a TCP port in the container (second value). В нашем примере SQL Server прослушивает TCP-порт 1433 в контейнере, который перенаправляется на порт 1433 на узле.In this example, SQL Server is listening on TCP 1433 in the container and this is exposed to the port, 1433, on the host.
    --name sql1--name sql1 Укажите свое имя для контейнера вместо сгенерированного случайным образом.Specify a custom name for the container rather than a randomly generated one. При запуске нескольких контейнеров использовать одинаковые имена запрещено.If you run more than one container, you cannot reuse this same name.
    mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04mcr.microsoft.com/mssql/server:2019-GA-ubuntu-16.04 Образ контейнера Ubuntu Linux с SQL Server 2019.The SQL Server 2019 Ubuntu Linux container image.
  3. Для просмотра ваших контейнеров Docker используйте команду docker ps.To view your Docker containers, use the docker ps command.

    sudo docker ps -a
    
    docker ps -a
    
    docker ps -a
    

    На следующем рисунке изображен примерный вывод команды.You should see output similar to the following screenshot:

    Вывод команды docker ps

  4. Если в столбце STATUS (состояние) отображается состояние Up (запущен), то SQL Server выполняется в контейнере и прослушивает порт, указанный в столбце PORTS (порты).If the STATUS column shows a status of Up, then SQL Server is running in the container and listening on the port specified in the PORTS column. Если в столбце STATUS контейнера с SQL Server отображается Exited (завершен), см.руководство Устранение неполадок конфигурации.If the STATUS column for your SQL Server container shows Exited, see the Troubleshooting section of the configuration guide.

Параметр -h (имя узла) может оказаться полезен, но для простоты в этом учебнике он не описывается.The -h (host name) parameter is also useful, but it is not used in this tutorial for simplicity. Он изменяет внутреннее имя контейнера на пользовательское значение.This changes the internal name of the container to a custom value. Это имя отображается при выполнении следующего запроса Transact-SQL.This is the name you'll see returned in the following Transact-SQL query:

SELECT @@SERVERNAME,
    SERVERPROPERTY('ComputerNamePhysicalNetBIOS'),
    SERVERPROPERTY('MachineName'),
    SERVERPROPERTY('ServerName')

Установка параметров -h и --name равными позволяет легко идентифицировать целевой контейнер.Setting -h and --name to the same value is a good way to easily identify the target container.

Смена пароля системного администратораChange the SA password

Учетная запись SA обладает правами администратора на экземпляре SQL Server, создаваемом во время установки.The SA account is a system administrator on the SQL Server instance that gets created during setup. После создания контейнера SQL Server указанную вами переменную среды SA_PASSWORD можно обнаружить, запустив echo $SA_PASSWORD в контейнере.After creating your SQL Server container, the SA_PASSWORD environment variable you specified is discoverable by running echo $SA_PASSWORD in the container. В целях безопасности смените пароль SA.For security purposes, change your SA password.

  1. Назначьте для пользователя SA надежный пароль.Choose a strong password to use for the SA user.

  2. Используйте docker exec для запуска sqlcmd, чтобы изменить пароль с помощью Transact-SQL.Use docker exec to run sqlcmd to change the password using Transact-SQL. В следующем примере замените старый пароль <YourStrong!Passw0rd> и новый пароль <YourNewStrong!Passw0rd>собственными паролями.In the following example, replace the old password, <YourStrong!Passw0rd>, and the new password, <YourNewStrong!Passw0rd>, with your own password values.

    sudo docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd \
       -S localhost -U SA -P "<YourStrong@Passw0rd>" \
       -Q 'ALTER LOGIN SA WITH PASSWORD="<YourNewStrong@Passw0rd>"'
    
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
       -S localhost -U SA -P "<YourStrong@Passw0rd>" `
       -Q "ALTER LOGIN SA WITH PASSWORD='<YourNewStrong@Passw0rd>'"
    
    docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
       -S localhost -U SA -P "<YourStrong!Passw0rd>" `
       -Q "ALTER LOGIN SA WITH PASSWORD='<YourNewStrong@Passw0rd>'"
    

Подключение к SQL ServerConnect to SQL Server

На следующем шаге воспользуемся средством командной строки SQL Server sqlcmd внутри контейнера для подключения к SQL Server.The following steps use the SQL Server command-line tool, sqlcmd, inside the container to connect to SQL Server.

  1. Выполните команду docker exec -it, чтобы запустить интерактивную оболочку bash внутри запущенного контейнера.Use the docker exec -it command to start an interactive bash shell inside your running container. В следующем примере sql1 — это имя, заданное в параметре --name при создании контейнера.In the following example sql1 is name specified by the --name parameter when you created the container.

    sudo docker exec -it sql1 "bash"
    
    docker exec -it sql1 "bash"
    
    docker exec -it sql1 "bash"
    
  2. После входа в контейнер подключитесь локально с помощью sqlcmd.Once inside the container, connect locally with sqlcmd. Средство sqlcmd не включено в путь по умолчанию, поэтому необходимо указать полный путь.Sqlcmd is not in the path by default, so you have to specify the full path.

    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
    

    Совет

    Вы можете опустить пароль в командной строке. В этом случае вы получите приглашение для его ввода.You can omit the password on the command-line to be prompted to enter it.

  3. Если все сработает должным образом, вы перейдете к приглашению команды sqlcmd: 1>.If successful, you should get to a sqlcmd command prompt: 1>.

Создание и запрос данныхCreate and query data

В следующих разделах приведено пошаговое руководство по созданию базы данных, добавлению данных и запуску простого запроса с использованием sqlcmd и Transact-SQL.The following sections walk you through using sqlcmd and Transact-SQL to create a new database, add data, and run a simple query.

Создание базы данныхCreate a new database

Выполните следующие шаги, чтобы создать базу данных TestDB.The following steps create a new database named TestDB.

  1. В приглашении команды sqlcmd вставьте следующую команду Transact-SQL, чтобы создать тестовую базу данных:From the sqlcmd command prompt, paste the following Transact-SQL command to create a test database:

    CREATE DATABASE TestDB
    
  2. В следующей строке напишите запрос, который должен вернуть имена всех баз данных на сервере:On the next line, write a query to return the name of all of the databases on your server:

    SELECT Name from sys.Databases
    
  3. Две предыдущие команды были выполнены не сразу.The previous two commands were not executed immediately. Необходимо ввести GO на новой строке, чтобы выполнить предыдущие команды:You must type GO on a new line to execute the previous commands:

    GO
    

Вставка данныхInsert data

Теперь создайте таблицу Inventory и вставьте две новых строки.Next create a new table, Inventory, and insert two new rows.

  1. В приглашении команды sqlcmd переключите контекст на новую базу данных TestDB:From the sqlcmd command prompt, switch context to the new TestDB database:

    USE TestDB
    
  2. Создайте таблицу Inventory:Create new table named Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. Вставьте данные в новую таблицу:Insert data into the new table:

    INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
    
  4. Введите GO, чтобы выполнить предыдущие команды:Type GO to execute the previous commands:

    GO
    

Выбор данныхSelect data

Теперь выполните запрос, чтобы вернуть данные из таблицы Inventory.Now, run a query to return data from the Inventory table.

  1. В приглашении команды sqlcmd введите запрос, который должен вернуть из таблицы Inventory строки, где количество превышает 152:From the sqlcmd command prompt, enter a query that returns rows from the Inventory table where the quantity is greater than 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. Выполните команду:Execute the command:

    GO
    

Выход из приглашения команды sqlcmdExit the sqlcmd command prompt

  1. Чтобы завершить сеанс sqlcmd, введите QUIT:To end your sqlcmd session, type QUIT:

    QUIT
    
  2. Чтобы выйти из интерактивной командной строки в контейнере, введите команду exit.To exit the interactive command-prompt in your container, type exit. Контейнер продолжит работать после выхода из интерактивной оболочки bash.Your container continues to run after you exit the interactive bash shell.

Подключение из-за пределов контейнераConnect from outside the container

Подключиться к экземпляру SQL Server на компьютере Docker можно также с помощью любого внешнего инструмента в macOS, Windows или Linux, поддерживающего подключения SQL.You can also connect to the SQL Server instance on your Docker machine from any external Linux, Windows, or macOS tool that supports SQL connections.

В следующем примере используется sqlcmd вне контейнера для подключения к SQL Server, запущенному в контейнере.The following steps use sqlcmd outside of your container to connect to SQL Server running in the container. В этом примере предполагается, что в среде вне контейнера, из которой происходит подключение, уже установлены средства командной строки SQL Server.These steps assume that you already have the SQL Server command-line tools installed outside of your container. При использовании других средств действует тот же принцип, но процесс подключения является уникальным для каждого средства.The same principles apply when using other tools, but the process of connecting is unique to each tool.

  1. Определите IP-адрес компьютера, на котором размещен контейнер.Find the IP address for the machine that hosts your container. В Linux используйте команды ifconfig или IP-адрес. В Windows используйте команду ipconfig.On Linux, use ifconfig or ip addr. On Windows, use ipconfig.

  2. В этом примере установите средство sqlcmd на клиентском компьютере.For this example, install the sqlcmd tool on your client machine. Дополнительные сведения см. в статье Установка sqlcmd в Windows или Установка sqlcmd в Linux.For more information, see Install sqlcmd on Windows or Install sqlcmd on Linux.

  3. Запустите sqlcmd, указав IP-адрес и порт, сопоставленный с портом 1433 в контейнере.Run sqlcmd specifying the IP address and the port mapped to port 1433 in your container. В данном примере это тот же порт 1433, что и на хост-компьютере.In this example, that is the same port, 1433, on the host machine. Если на хост-компьютере был указан другой сопоставленный порт, используйте его здесь.If you specified a different mapped port on the host machine, you would use it here.

    sqlcmd -S <ip_address>,1433 -U SA -P "<YourNewStrong@Passw0rd>"
    
    sqlcmd -S <ip_address>,1433 -U SA -P "<YourNewStrong@Passw0rd>"
    
    sqlcmd -S <ip_address>,1433 -U SA -P "<YourNewStrong@Passw0rd>"
    
  4. Выполните команды языка Transact-SQL.Run Transact-SQL commands. По завершении введите QUIT.When finished, type QUIT.

Другие распространенные средства для подключения к SQL Server:Other common tools to connect to SQL Server include:

Удаление контейнераRemove your container

Чтобы удалить контейнер SQL Server, используемый в этом руководстве, выполните следующие команды.If you want to remove the SQL Server container used in this tutorial, run the following commands:

sudo docker stop sql1
sudo docker rm sql1
docker stop sql1
docker rm sql1
docker stop sql1
docker rm sql1

Предупреждение

Остановка и удаление контейнера безвозвратно удаляет все данные SQL Server в контейнере.Stopping and removing a container permanently deletes any SQL Server data in the container. Чтобы сохранить данные, создайте и скопируйте файл резервной копии за пределы контейнера или используйте метод постоянного хранения данных контейнера.If you need to preserve your data, create and copy a backup file out of the container or use a container data persistence technique.

Демонстрация возможностей DockerDocker demo

После того как вы научились использовать образ контейнера SQL Server для Docker, возможно, вы захотите узнать, как использовать Docker для упрощения разработки и тестирования.After you have tried using the SQL Server container image for Docker, you might want to know how Docker is used to improve development and testing. Следующий видеоролик рассказывает о том, как можно использовать Docker в сценарии непрерывной интеграции и развертывания.The following video shows how Docker can be used in a continuous integration and deployment scenario.

Следующие шагиNext steps

Сведения о восстановлении файлов резервной копии базы данных в контейнере см. в руководстве Восстановление базы данных SQL Server в контейнере Docker в Linux.For a tutorial on how to restore database backup files into a container, see Restore a SQL Server database in a Linux Docker container. Сведения о других сценариях, таких как запуск нескольких контейнеров, сохраняемость данных и устранение неполадок, см. в руководстве Настройка образов контейнеров SQL Server в Docker.To explore other scenarios, such as running multiple containers, data persistence, and troubleshooting, see Configure SQL Server container images on Docker.

Кроме того, в репозитории GitHub mssql docker вы найдете ресурсы, отзывы и известные проблемы.Also, check out the mssql-docker GitHub repository for resources, feedback, and known issues.