Docker desktop安裝mysql過(guò)程
Docker desktop安裝mysql
首先本地已經(jīng)有 docker 環(huán)境存在,然后可以拉取 MySQL 鏡像。
相關(guān)mysql倉(cāng)庫(kù)地址
https://hub.docker.com/_/mysql/
# 鏡像拉取 docker pull mysql:8.0.26 docker pull mysql:latest # 查看鏡像列表 docker image ls
等待鏡像完成之后就可以啟動(dòng)mysql了
注意需要配置一些啟動(dòng)參數(shù)
# 啟動(dòng)命令 docker run -it --name mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=12345678 mysql:8.0.28 # 如果要后臺(tái)啟動(dòng)加-d參數(shù) docker run -itd --name mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=12345678 mysql:8.0.28 # 查看容器 docker ps # 查看容器,包括已經(jīng)停止的 docker ps -a # 停止鏡像 docker kill 容器id # 再次啟動(dòng)已經(jīng)停止的容器 docker start 容器id
MySQL 提供了很多環(huán)境變量參數(shù)
可以自定義 MySQL 環(huán)境
常用的如下:
參考地址:https://dev.mysql.com/doc/refman/5.7/en/environment-variables.html
參數(shù)名 | 說(shuō)明 | 默認(rèn)值 |
---|---|---|
MYSQL_ROOT_PASSWORD | root 用戶(hù)的密碼 | my-secret-pw |
MYSQL_DATABASE | 自定義新數(shù)據(jù)庫(kù)名稱(chēng) | |
MYSQL_USER | 自定義用戶(hù)名 | |
MYSQL_PASSWORD | 自定義用戶(hù)密碼 | |
MYSQL_ALLOW_EMPTY_PASSWORD | 是否允許啟動(dòng) root 密碼是空密碼:非空表示 yes | 空表示 no |
MYSQL_RANDOM_ROOT_PASSWORD | 使用隨機(jī) root 密碼,一般從日志中查找密碼:非空表示 yes | 空表示 no |
MYSQL_ONETIME_PASSWORD | root 使用一次性密碼:非空表示 yes,登錄后強(qiáng)制要求修改 | 空表示 no |
MYSQL_INITDB_SKIP_TZINFO | CONVERT_TZ() 獲取時(shí)區(qū),非空表示 disable |
一般使用MYSQL_ROOT_PASSWORD
就可以了
上面的情況下啟動(dòng)的 MySQL 能夠滿(mǎn)足基本需求,不過(guò)每次重啟之后數(shù)據(jù)就丟失了,就算是開(kāi)發(fā)環(huán)境這樣也不能接受的,需要掛接本地磁盤(pán),方便下次可以訪(fǎng)問(wèn)。
首先可以選擇一個(gè)本地文件路徑,如:C:/MySQL/data
,然后映射到/var/lib/mysql
,增加命令參數(shù): -v C:/MySQL/data:/var/lib/mysql
,
完整命令:
docker run -itd --name mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=12345678 -v D:\DockerRepmysql\data:/var/lib/mysql -v D:\DockerRep\mysql\conf/conf.d:/etc/mysql/conf.d mysql:8.0.28
docker run --name mysql -v D:\DockerRep\mysql\conf:/etc/mysql -v D:\DockerRep\mysql\log:/var/log -v D:\DockerRep\mysql\data:/var/lib/mysql -v D:\DockerRep\mysql\conf\conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=jecn@123 -d -i -p 13306:3306 mysql:5.7.37
如果還要自定義配置文件可以再增加:
D:\DockerRep\mysql\conf/conf.d:/etc/mysql/conf.d
然后可以用客戶(hù)端登錄了,而且下次啟動(dòng)不會(huì)丟失數(shù)據(jù)。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- docker拉取MySQL8.0鏡像以及安裝的完整步驟
- docker安裝及運(yùn)行MySQL5.7容器完整腳本及說(shuō)明
- docker安裝mysql并實(shí)現(xiàn)數(shù)據(jù)卷掛載的示例代碼
- linux和docker下mysql安裝方式
- docker上安裝和卸載MySQL數(shù)據(jù)庫(kù)詳細(xì)圖文教程
- Docker安裝MySQL鏡像實(shí)戰(zhàn)分享
- Docker安裝mysql主從復(fù)制的實(shí)現(xiàn)步驟
- Docker安裝MySql遇到的問(wèn)題解決
- Docker安裝mysql9.1.0的實(shí)現(xiàn)
相關(guān)文章
Dockerfile中multi-stage(多階段構(gòu)建)詳解
在2017年5月3日即將發(fā)行的 Docker 17.05.0-ce 中,Docker 官方提供了簡(jiǎn)便的多階段構(gòu)建 (multi-stage build) 方案,下面這篇文章主要給大家介紹了關(guān)于Dockerfile中multi-stage(多階段構(gòu)建)的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03docker安裝java環(huán)境的實(shí)現(xiàn)步驟
這篇文章主要介紹了docker安裝java環(huán)境的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12查詢(xún)Docker鏡像DockerFile的方法步驟
本文主要介紹了查詢(xún)Docker鏡像DockerFile的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08docker安裝部署jumpserver?2.25.5的方法
這篇文章主要介紹了docker安裝部署jumpserver?2.25.5的方法,本文通過(guò)圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09Docker 中快速構(gòu)建 Redis Cluster 集群的詳細(xì)過(guò)程
Redis Cluster 集群模式提供了數(shù)據(jù)分區(qū)和高可用性,通過(guò)分布式方式存儲(chǔ)和管理數(shù)據(jù),實(shí)現(xiàn)更高的擴(kuò)展性,本指南將演示如何使用 Docker 快速構(gòu)建一個(gè)包含 3 個(gè)節(jié)點(diǎn)的 Redis Cluster 集群,感興趣的朋友一起看看2024-05-05