DockerでSQLServerをインストールする
DockerでSQLServerのイメージを作成する
Docker Hub から SQL Server 2019 Linux コンテナー イメージをプルします。
SQL Server 2019 Developer Edition のコンテナーが作成されます。
内部接続
外部接続 デフォルトでは、外部接続は不可。
以下のコマンドで可能にする。
参考 クイック スタート:Docker を使用して SQL Server コンテナー イメージを実行する
Docker Hub から SQL Server 2019 Linux コンテナー イメージをプルします。
$ sudo docker pull mcr.microsoft.com/mssql/server:2019-CU3-ubuntu-18.04 2019-CU3-ubuntu-18.04: Pulling from mssql/server 5b7339215d1d: Pull complete 14ca88e9f672: Pull complete a31c3b1caad4: Pull complete b054a26005b7: Pull complete 59f979819d9b: Pull complete 29eb18117119: Pull complete 6de3c1cf897f: Pull complete 172ea0155639: Pull complete Digest: sha256:e064843673f08f22192c044ffa6a594b0670a3eb3f9ff7568dd7a65a698fc4d6 Status: Downloaded newer image for mcr.microsoft.com/mssql/server:2019-CU3-ubuntu-18.04 mcr.microsoft.com/mssql/server:2019-CU3-ubuntu-18.04
SQL Server 2019 Developer Edition のコンテナーが作成されます。
$ sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Passw0rd" \ > -p 1433:1433 --name sql1 \ > -d mcr.microsoft.com/mssql/server:2019-CU3-ubuntu-18.04 f4729a3a2c1f705083a90f426fc76b94a564857d489141c6588dd14e9fb5920e # 状態確認 $ sudo docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f4729a3a2c1f mcr.microsoft.com/mssql/server:2019-CU3-ubuntu-18.04 "/opt/mssql/bin/perm…" 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp sql1 0b278c499633 ubuntu "/bin/bash" 26 minutes ago Exited (127) 24 minutes ago gifted_shaw
内部接続
# bashで接続 $ docker exec -it sql1 "bash" mssql@6ad2d9350195:/$ # コンテナ内では、sqlcmdでDBへ接続する。 # PATHが通っていないのでフルパス指定する。 $ /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "Passw0rd" 1> CREATE DATABASE TestDB 2> GO 1> SELECT Name from sys.Databases 2> GO Name -------------------------------------------------------------------------------------------------------------------------------- master tempdb model msdb TestDBCTRL-Zで抜ける。
外部接続 デフォルトでは、外部接続は不可。
以下のコマンドで可能にする。
$ docker exec -it sql1 "bash" mssql@6ad2d9350195:/$ /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P Passw0rd 1> sp_configure 'remote admin connections',1; 2> GO; 3> RECONFIGURE; 4> GO; # 外部接続 sqlcmd -S 127.0.0.1 -U SA -P "Passw0rd" 1> SELECT Name from sys.Databases 2> GO Name -------------------------------------------------------------------------------------------------------------------------------- master tempdb model msdb TestDB
参考 クイック スタート:Docker を使用して SQL Server コンテナー イメージを実行する
コメント
コメントを投稿