mac如何用docker跑sql server
網(wǎng)上的各個文章跑下來都有一些問題,記錄一下我成功跑起來的過程。
省略Docker安裝
修改docker源
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://hub-mirror.c.163.com"
]
}拉取
docker pull mcr.microsoft.com/mssql/server:2017-latest
- 運行
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=I_werw3456' -p 1433:1433 -v /Users/david/Davids_Self_Doc/sql_db:/var/opt/mssql --name sqlserver2017 -d mcr.microsoft.com/mssql/server:2017-latest
其中,有幾個坑點:不處理這些坑點,會導致你的 sqlserver 容器不能正常運行。
- 1."ACCEPT_EULA=Y" 和 "SA_PASSWORD=I_werw3456" : windows docker,這里必須是雙引號。
- 2."SA_PASSWORD=Fyy@12345678" 密碼復雜度,要有大小寫、特殊符號 和 數(shù)字
- 3.(不是必須的) --memory 2000M:sqlserver 的容器運行時,內(nèi)存要>=2000MB,因此,要指定 容器運行時內(nèi)存。否則容器已啟動就推出,且不會有任何異常信息。
當容器不能啟動,或者啟動就退出時,可以 用命令 docker logs <container> 查看日志,根據(jù)日志信息解決問題(<container> 為需要操作的 容器ID或者 name,后面不再說明)。
查看運行的容器
docker container ls
查看所有的容器
docker ps -a
刪除容器
docker rm id或名稱
還原數(shù)據(jù)庫
先把.bak文件放在之前主機的持久化目錄(/Users/david/Davids_Self_Doc/sql_db)
- 然后:
docker exec -it sqlserver2017 /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P 'I_werw3456' -Q "RESTORE DATABASE train FROM DISK = '/var/opt/mssql/train_backup_2025_03_07_000003_7150375.bak' WITH MOVE 'tran_test' TO '/var/opt/mssql/data/train.mdf', MOVE 'tran_test_log' TO '/var/opt/mssql/data/train_log.ldf'"
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker配置openGauss數(shù)據(jù)庫的方法詳解
這篇文章主要介紹了docker配置openGauss數(shù)據(jù)庫,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
Linux中使用Docker構(gòu)建Nginx容器的詳細攻略
Nginx是一款廣泛使用的高性能 Web 服務(wù)器和反向代理服務(wù)器,適用于各種場景,如靜態(tài)文件服務(wù)、負載均衡和 API 網(wǎng)關(guān)等,在本教程中,我們將詳細介紹如何在 Docker 中構(gòu)建并運行一個 Nginx 容器,幫助開發(fā)者快速搭建和管理 Nginx 服務(wù),感興趣的朋友跟隨小編一起看看吧2025-12-12
docker安裝java環(huán)境的實現(xiàn)步驟
這篇文章主要介紹了docker安裝java環(huán)境的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12
windows docker環(huán)境設(shè)置注意事項
這篇文章主要介紹了windows docker環(huán)境設(shè)置注意事項的相關(guān)資料,需要的朋友可以參考下2017-01-01

