這篇文章給大家介紹怎么在Docker中部署MySQL并實(shí)現(xiàn)數(shù)據(jù)持久化,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
在城口等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需設(shè)計(jì)網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,全網(wǎng)營(yíng)銷推廣,外貿(mào)網(wǎng)站建設(shè),城口網(wǎng)站建設(shè)費(fèi)用合理。首先將tutum-docker-mysql跑起來(lái).
docker run -d -p 3306:3306 --name mysql tutum/mysql
如果你本地沒(méi)有tutum/mysql的image,docker會(huì)先下載它的image,這一步可能會(huì)用些時(shí)間.待執(zhí)行完畢我們檢查一下應(yīng)該會(huì)有如下樣子
tutum-docker-mysql會(huì)自動(dòng)幫我們建一個(gè)隨機(jī)的密碼供我們?cè)L問(wèn),通過(guò)日志可以查看到.
我們通過(guò)日志上的密碼登陸mysql
mysql -uadmin -pi6k5USp9Km9G -h227.0.0.1
理論上我們這個(gè)時(shí)候就登陸mysql成功了,你可以創(chuàng)建一個(gè)庫(kù),一個(gè)張表,然后退出.但是當(dāng)這個(gè)container停止再重啟后,你的數(shù)據(jù)就丟了. 如何使你的數(shù)據(jù)真的被保存下來(lái)呢?
解決方案就是:掛載一個(gè)本地文件到Container (Mount a local folder from the host on the container to store the database files).
首先我們停掉之前的Container
docker stop mysql
我們指定一個(gè)本地可以掛載的路徑,重新啟動(dòng)tutum-docker-mysql.我們指定/home/walter/softwares/tutum-docker-mysql/data 掛到Container里的/var/lib/mysql目錄(-v Bind mount a volume). 這樣子我們就可以將數(shù)據(jù)持久化在主機(jī)(Host)的目錄中了.
sudo docker run -d -p 3306:3306 -v /home/walter/softwares/tutum-docker-mysql/data:/var/lib/mysql -e MYSQL_PASS="mypass" tutum/mysql
我們?cè)谏厦鎲?dòng)的時(shí)候順便指定了創(chuàng)建密碼為mypass,我們現(xiàn)在登陸一下mysql創(chuàng)建一些數(shù)據(jù),看看會(huì)不會(huì)被保存下來(lái)
shell>mysql -uadmin -pmypass -h227.0.0.1 mysql>create database test;
退出mysql,重啟Container,我們發(fā)下我們做的操作將會(huì)被保留下來(lái).我們之后每一次啟動(dòng)這個(gè)mysql都可以使用下面的命令
docker run -d -p 127.0.0.1:3306:3306 -v /home/walter/softwares/tutum-docker-mysql/data:/var/lib/mysql tutum/mysql
關(guān)于怎么在Docker中部署MySQL并實(shí)現(xiàn)數(shù)據(jù)持久化就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。