Docker for WindowsでSQLServerを動作させる
リポジトリからイメージを取ってきて起動する
最低限で起動さえすればいい場合
PS > docker run -d --rm -p 1433:1433 -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Password0!" -e "MSSQL_PID=Express" microsoft/mssql-server-linux:2017-latest
-e の引数 | 意味合い |
---|---|
ACCEPT_EULA=Y | EULAに同意する |
SA_PASSWORD=Password0! | saアカウントのパスワード |
MSSQL_PID=Express | プロダクトID or エディションの指定 |
PS > docker -ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1da555c62a3c microsoft/mssql-server-linux:2017-latest "/opt/mssql/bin/sqls…" 10 seconds ago Up 8 seconds 0.0.0.0:1433->1433/tcp eager_panini
SQLServerは起動時に渡すオプションが多い
–env-file オプションで渡せば多くても安心
env.txt
のようなテキストファイルを作っておいて--env-file
オプションで渡すことができる
PS > cat env.txt
ACCEPT_EULA=Y
SA_PASSWORD=Password0!
MSSQL_PID=Express
MSSQL_COLLATION=Japanese_CI_AS
MSSQL_LOG_DIR=/MSSQL/log
MSSQL_DATA_DIR=/MSSQL/data
MSSQL_BACKUP_DIR=/MSSQL/backup
MSSQL_MASTER_DATA_FILE=/MSSQL/master.mdf
MSSQL_MASTER_LOG_FILE=/MSSQL/mastlog.ldf
PS > docker run -d --rm -p 1433:1433 --env-file=C:\Docker\SQLServer\env.txt -v C:\Docker\SQLServer\DB:/MSSQL microsoft/mssql-server-linux:2017-latest
これでコンテナを終了させてもデータは永続化されています
竹内電設は、大阪府下を中心に中小規模の組織がITシステムを効果的に活用するための、お手伝いをさせていただいております
© 2023 竹内電設; all rights reserved.