windows Docker Desktop 搭建mysql,mssql和redis服務

其實網上關於docker上搭建mysql的文章已經不少了,只是今晚本身搭建的時候遇到一些問題,記錄一下mysql

1.首先是pull image , docker pull mysqllinux

 

2.啓動服務 docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=ncs123456# -d mysqlredis

 

但是這樣確實啓動起來了,可是用客服端工具鏈接報2058錯誤,sql

3.進入到mysql換進中 docker exec -it mysql mysql -uroot -pncs123456#docker

 

4修改密碼 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';數據庫

 

記住必定要修改密碼(個人意思這裏的密碼必須和先前的密碼要不同), 不修改好像不行的,由於我執行過如下指令是沒有解決問題ide

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密規則 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用戶的密碼 
FLUSH PRIVILEGES; 
alter user 'root'@'localhost' identified by 'ncs123456#';工具

因此必須修改密碼測試

5,通常咱們都須要配置mysql的路徑, 換種說法就是讓mysql的配置和數據庫文件保存到物理機上,須要建立映射(須要先刪除先前的容器)docker run --name mysql -v D:/Docker/mysql/conf:/etc/mysql/conf.d -v d:/Docker/mysql/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql加密

物理文件結構以下:

 

注意:先不要在你的配置文件D:/Docker/mysql/conf中添加任何內容,測試容器可否正常運行。若是能夠,再往配置文件中添加配置,這樣能夠方便排除錯誤;由於舊版的mysql配置不必定適用於新版的mysql。下面的錯誤的源頭就是配置文件的問題(我也一直沒有想到是它的問題)

參考 https://www.jianshu.com/p/d297b0be4157

-----------------------------------------------------------------------------

mssql 很簡單了:

1.拉取鏡像 docker pull microsoft/mssql-server-linux

 

2.啓動服務 docker run  -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=ncs123456#' -p 1433:1433 --name mssql -v /d/docker/mssql/data:/var/opt/mssql/data -d microsoft/mssql-server-linux

----------------------------------------------------------------------------

Redis的搭建就比較簡單了,

1.拉取鏡像 docker pull redis

2.準備物理文件 D:\Docker\redis\redis.conf 而後啓動redis,docker run -v /d/docker/redis/redis.conf:/usr/local/ect/redis/redis.conf --name redis -p 6379:6379 -d redis

3.進入redis cli操做練習

相關文章
相關標籤/搜索