Когда нужно запустить контейнер SQL Server, Docker показывает статус sxited - PullRequest
0 голосов
/ 01 ноября 2019

После извлечения контейнера SQL Server, когда я хочу запустить его, Docker показывает мне состояние «выход» при выполнении этой команды:

docker ps -a

Я попробовал эту ссылкуно это мне не помогло: https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-configure-docker?view=sql-server-ver15#troubleshooting

Это мои журналы контейнеров: https://paste.fedoraproject.org/paste/dBBFlyulZ1Bera2caa84tA

Я использую Fedora 29 x86_x64 и моя версия клиента Docker 18.09.6 Build 481bc77 и Docker-Ce - 19.03.4

(извините за мой плохой английский)

1 Ответ

0 голосов
/ 01 ноября 2019

Это потому, что запуск SQL-Server приводит к ошибке. Ошибка может быть найдена в журнале ошибок. К сожалению, вы не можете получить к нему доступ, потому что контейнер заканчивается. Для просмотра журнала ошибок вам необходимо предоставить общий доступ к этому каталогу ...

На хосте создайте место, где контейнер хранит данные:

sudo mkdir -p /var/opt/mssql

Создайте Docker-контейнерс отображенным каталогом данных:

docker pull mcr.microsoft.com/mssql/server:2017-latest
docker run -d -p 2017:1433 --name mssql_2017 -e MSSQL_SA_PASSWORD=TOP_SECRET -e ACCEPT_EULA=Y  -e MSSQL_PID="Developer" -v /var/opt/mssql:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2017-latest

(примечание: это сопоставляет порт 1433 в контейнере с портом 2017 на хосте)затем, чтобы запустить / остановить контейнер:

docker start mssql_2017
docker stop mssql_2017

Теперь вы можете посмотреть на ошибки в /var/opt/mssql/log на вашем хост-компьютере.

Кроме того, вы можете проверить, работает ли он, подключившись с помощью sqlcmd:

Для Fedora:

sudo su
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo
exit
sudo yum clean expire-cache
sudo yum check-update
sudo yum remove mssql-tools unixODBC-utf16-devel
sudo yum install mssql-tools unixODBC-devel
sudo ln -sfn /opt/mssql-tools/bin/sqlcmd /usr/bin/sqlcmd
sqlcmd -S localhost,2017 -U SA -P "<YourPassword>"

Для Ubuntu:

sudo wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/ubuntu/16.04/mssql-server-2017.list)"
sudo apt-get update
sudo apt-get install mssql-tools
sudo ln -sfn /opt/mssql-tools/bin/sqlcmd /usr/bin/sqlcmd
sqlcmd -S localhost,2017 -U SA -P "<YourPassword>"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...