本文章來自【知識(shí)林】
在《06 - 分析docker run hello-world(Docker系列)》一文中看到了docker run hello-world
氛赐,也描述了hello-world
是鏡像名稱阅畴,是可以從官方鏡像倉(cāng)庫(kù)拉取的鏡像名稱粪薛。
那么草娜,在官方鏡像倉(cāng)庫(kù)里面都有些什么鏡像可以供我們拉人┲瘛?這些鏡像的名稱都是什么樣的苍苞?我們應(yīng)該如何拉日怼筒饰?又該如何使用?
帶著這些問題壁晒,首先需要知識(shí)Docker官方的鏡像倉(cāng)庫(kù)地址是什么:https://hub.docker.com/
可以訪問:https://hub.docker.com/explore/來查看比較常用的鏡像倉(cāng)庫(kù)信息
![常用的鏡像倉(cāng)庫(kù)](http://zsl131.github.io/docker/07/02.png =100x"常用的鏡像倉(cāng)庫(kù)")
- 查找
hello-world
鏡像
在搜索輸入框中輸入:hello-world
回車后可以看到下圖(official表示是官方的):
點(diǎn)擊官方的hello-world
后可以看到下圖:
在這里可以看到拉取hello-world
鏡像的命令:docker pull hello-world
瓷们,及hello-world
鏡像所有的tags信息latest
和nanoserver
- 查看Mysql鏡像倉(cāng)庫(kù)
同樣在Search輸入框中輸入mysql
回車后即可搜索出相應(yīng)的鏡像倉(cāng)庫(kù),點(diǎn)擊進(jìn)入官方的mysql
鏡像倉(cāng)庫(kù)詳情讨衣,如圖:
在這里可以看到MySQL對(duì)應(yīng)的各種版本(也就是Tags)换棚,若要拉取5.5的MySQL鏡像可以使用命令:docker pull mysql:5.5
,這和前面介紹的拉取hello-world
的方式一樣反镇。
- 運(yùn)行MySQL容器
通過官方的文檔可以看到運(yùn)行MySQL容器的命令是:
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mypwd -d mysql:tag
如:docker run --name mysqldb -e MYSQL_ROOT_PASSWORD=123456 -p 3336:3306 -d mysql:5.7
說明:
docker run
:運(yùn)行容器
--name
:指定容器名稱,這里指定的名稱為mysqldb
-e
:指定環(huán)境參數(shù)娘汞,e
是environment
的縮寫歹茶,在運(yùn)行MySQL容器時(shí)可以指定的環(huán)境參數(shù)有:
MYSQL_ROOT_PASSWORD : root用戶的密碼翘鸭,這里設(shè)置的初始化密碼為`123456`;
MYSQL_DATABASE : 運(yùn)行時(shí)需要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)名稱盲厌;
MYSQL_USER : 運(yùn)行時(shí)需要?jiǎng)?chuàng)建用戶名坚俗,與MYSQL_PASSWORD一起使用;
MYSQL_PASSWORD : 運(yùn)行時(shí)需要?jiǎng)?chuàng)建的用戶名對(duì)應(yīng)的密碼尸昧,與MYSQL_USER一起使用揩页;
MYSQL_ALLOW_EMPTY_PASSWORD : 是否允許root用戶的密碼為空,該參數(shù)對(duì)應(yīng)的值為:yes烹俗;
MYSQL_RANDOM_ROOT_PASSWORD:為root用戶生成隨機(jī)密碼爆侣;
MYSQL_ONETIME_PASSWORD : 設(shè)置root用戶的密碼必須在第一次登陸時(shí)修改(只對(duì)5.6以上的版本支持)。
MYSQL_ROOT_PASSWORD 和 MYSQL_RANDOM_ROOT_PASSWORD 兩者必須有且只有一個(gè)幢妄。
-p 3336:3306
:對(duì)外映射容器內(nèi)的端口號(hào)兔仰,這里將容器里的3306
映射到外部可訪問的3336
端口
-d
:后臺(tái)運(yùn)行
mysql:5.7
:運(yùn)行5.7這個(gè)版本的mysql
在這篇文章中講述了如何在hub.docker.com中查找鏡像,也簡(jiǎn)單介紹了一些docker的命令蕉鸳,在下一節(jié)中主要講解docker的一些常用命令乎赴。
本文章來自【知識(shí)林】