docker日常使用方式

前提

在安裝docker之前,建議你設(shè)置系統(tǒng)的國(guó)內(nèi)鏡像源先哦,很快~嗯润樱,快。
阿里云鏡像源:https://developer.aliyun.com/mirror/

安裝

安裝docker

下面都是官網(wǎng)地址:
ubuntu: https://docs.docker.com/engine/install/ubuntu/
centos:https://docs.docker.com/engine/install/centos/
其他版本就是url后面的幾個(gè)英文不同羡棵。

開(kāi)機(jī)啟動(dòng)

sudo systemctl enable docker.service

設(shè)置國(guó)內(nèi)鏡像

docker中國(guó)區(qū)的鏡像:https://registry.docker-cn.com
網(wǎng)易:http://hub-mirror.c.163.com
中國(guó)科技大學(xué):https://docker.mirrors.ustc.edu.cn
阿里云:https://cr.console.aliyun.com/ 點(diǎn)擊左側(cè)欄有個(gè)鏡像加速地址壹若,就可以看到你的加速鏡像地址

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["加速鏡像地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

安裝docker-compose(用到才裝)

官網(wǎng)地址:https://docs.docker.com/compose/install/

設(shè)置.docker文件權(quán)限

docker安裝好后,會(huì)在當(dāng)前用戶(hù)的家目錄下生成.docker文件皂冰,該文件不出意外的話(huà)是屬于root用戶(hù)和root組店展,畢竟要sudo下載,使用ll命令查看一下秃流。

drwx------  2 root root  4096 Jun  5 11:26 .docker/

假設(shè)我的用戶(hù)和組都為vagrant赂蕴,那么命令如下:

sudo chown -R vagrant:vagrant 當(dāng)前用戶(hù)的家目錄/.docker

上面的vagrant:vagrant對(duì)應(yīng)的是用戶(hù)名:用戶(hù)組 ,一般情況下現(xiàn)在使用docker指令則不需要在前面加sudo了(去你丫的sudo)
安裝步驟已完成

鏡像舶胀?容器概说?

什么是鏡像?什么是容器吶嚣伐?可以這么類(lèi)比:鏡像就是一個(gè)模板糖赔;容器則是根據(jù)模板的實(shí)現(xiàn)。在代碼中轩端,你也可以想成接口(鏡像)與實(shí)現(xiàn)類(lèi)(容器)放典。

docker鏡像中心

地址:https://hub.docker.com/,在這里你可以找到你所需要的鏡像基茵,你可以搜mysql奋构、redis、nginx等等耿导,可以查到有什么版本声怔、怎么運(yùn)行、有什么配置舱呻,有什么環(huán)境變量可以設(shè)置(比如在mysql你需要設(shè)置他的root密碼)等等信息醋火。

指令集

以mysql為例

下載鏡像

使用docker pull命令

docker pull mysql:8.0.20

查看所有鏡像悠汽,可以看到你剛下載的mysql鏡像

docker images

創(chuàng)建并運(yùn)行容器

創(chuàng)建并運(yùn)行你的mysql容器,我使用一條比較長(zhǎng)的命令來(lái)講解:

sudo docker run --name mysql_1 -p 3306:3306 -v /var/mapping/mysql/conf.d:/etc/mysql/conf.d -v /var/mapping/mysql_1/lib:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.20 --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4

指令格式 docker run [OPTIONS] IMAGE [COMMAND]

docker run:會(huì)創(chuàng)建并運(yùn)行容器
-p:映射端口 3306:3306 就是把容器的3306端口映射到宿主機(jī)的3306端口芥驳, 格式(宿主機(jī)端口:容器端口)
-v:映射數(shù)據(jù)卷柿冲,即映射文件,格式(宿主機(jī)數(shù)據(jù)卷:容器數(shù)據(jù)卷)
-e:設(shè)置環(huán)境變量兆旬,如設(shè)置root的初始密碼 MYSQL_ROOT_PASSWORD假抄,可以在docker的鏡像中心查看有哪些環(huán)境變量
-d:指定鏡像

--default-authentication-plugin=mysql_native_password--character-set-server=utf8mb4屬于command參數(shù),需要設(shè)置在鏡像后面丽猬。
--default-authentication-plugin=mysql_native_password指的是修改認(rèn)證的加密方式宿饱,mysql8.0后的加密方式改了,導(dǎo)致navicat那些數(shù)據(jù)庫(kù)管理工具連不上脚祟。所以這里修改加密方式為mysql_native_password
--character-set-server=utf8mb4則是設(shè)置數(shù)據(jù)庫(kù)的編碼方式為utf8mb4谬以。
當(dāng)然還有很多的command指定都可以在docker hub鏡像中心查看。

自動(dòng)運(yùn)行

當(dāng)docker啟動(dòng)的時(shí)候由桌,容器也自動(dòng)啟動(dòng)为黎,有兩種方式
1.創(chuàng)建容器時(shí)指定--restart=always

docker run --restart=always -d mysql:8.0.20

2.容器已經(jīng)創(chuàng)建好了,使用docker update修改容器行您,CONTAINER可以是容器id铭乾,也可以是容器名,docker ps 可以命令查看

docker update --restart=always [CONTAINER]

常用指令

首先說(shuō)明一下:CONTAINER可以是容器ID娃循,也可以是容器名炕檩,IMAGE可以是鏡像ID,也可以是 鏡像名:tag
查看所有鏡像

docker images

查看所有容器淮野,包括沒(méi)啟動(dòng)的(加 -a 選項(xiàng))

docker ps -a

啟動(dòng)容器捧书,停止容器

docker start [CONTAINER]
docker start CONTAINER1 CONTAINER2 # 啟動(dòng)多個(gè)容器
docker stop [CONTAINER]
docker stop CONTAINER1 CONTAINER2 # 停止多個(gè)容器

進(jìn)入容器

docker exec -it [CONTAINER] bash

在宿主機(jī)執(zhí)行容器內(nèi)的命令,mysqldump是mysql_1容器內(nèi)的指令

docker exec -it mysql_1 mysqldump ...

刪除容器

docker rm [CONTAINER]
docker rm CONTAINER1 CONTAINER2 # 刪除多個(gè)容器

刪除鏡像

docker rmi [IMAGE]
docker rmi IMAGE1 IMAGE2 # 刪除多個(gè)鏡像

docker鏡像倉(cāng)庫(kù)

當(dāng)你在公司修改了某個(gè)容器之后骤星,想在家也使用這個(gè)容器经瓷。那么可以把容器打包成鏡像,提交到docker倉(cāng)庫(kù)當(dāng)中洞难。
我是在aliyun上創(chuàng)建了docker鏡像倉(cāng)庫(kù):https://cr.console.aliyun.com/
首先把你的容器打包成鏡像舆吮,這個(gè)是把我的mysql_1容器打包成鏡像my_mysql_1taglatet队贱。

docker commit mysql_1 my_mysql_1:latest

打包完后執(zhí)行指令docker images色冀,查看鏡像是否存在。

提交到鏡像倉(cāng)庫(kù)

1.首先需要?jiǎng)?chuàng)建命名空間


image.png

2.創(chuàng)建你的鏡像倉(cāng)庫(kù)


image.png

3.登錄并提交到倉(cāng)庫(kù)
點(diǎn)擊所需提交到鏡像倉(cāng)庫(kù)的管理按鈕柱嫌,可以查看到以下界面
image.png

跟著這里面的步驟執(zhí)行就可以提交到docker鏡像倉(cāng)庫(kù)了锋恬。就介么簡(jiǎn)單。

總結(jié)

以上便是docker比較常用的操作编丘。ok与学,拜拜你了~彤悔。

個(gè)人博客網(wǎng)址: https://colablog.cn/

如果我的文章幫助到您,可以關(guān)注我的微信公眾號(hào)索守,第一時(shí)間分享文章給您


微信公眾號(hào)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末晕窑,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子卵佛,更是在濱河造成了極大的恐慌杨赤,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件截汪,死亡現(xiàn)場(chǎng)離奇詭異疾牲,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)挫鸽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)说敏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人丢郊,你說(shuō)我怎么就攤上這事∫阶桑” “怎么了枫匾?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)拟淮。 經(jīng)常有香客問(wèn)我干茉,道長(zhǎng),這世上最難降的妖魔是什么很泊? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任角虫,我火速辦了婚禮,結(jié)果婚禮上委造,老公的妹妹穿的比我還像新娘戳鹅。我一直安慰自己,他們只是感情好昏兆,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布枫虏。 她就那樣靜靜地躺著,像睡著了一般爬虱。 火紅的嫁衣襯著肌膚如雪隶债。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,185評(píng)論 1 284
  • 那天跑筝,我揣著相機(jī)與錄音死讹,去河邊找鬼。 笑死曲梗,一個(gè)胖子當(dāng)著我的面吹牛赞警,可吹牛的內(nèi)容都是我干的逛腿。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼仅颇,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼单默!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起忘瓦,我...
    開(kāi)封第一講書(shū)人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤搁廓,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后耕皮,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體境蜕,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年凌停,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了粱年。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡罚拟,死狀恐怖台诗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赐俗,我是刑警寧澤拉队,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站阻逮,受9級(jí)特大地震影響粱快,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叔扼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一事哭、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧瓜富,春花似錦鳍咱、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至仅胞,卻和暖如春每辟,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背干旧。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工渠欺, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人椎眯。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓挠将,卻偏偏與公主長(zhǎng)得像胳岂,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子舔稀,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344