Docker
[TOC]
避不開的對(duì)比:Docker VS 虛擬機(jī)
好像很多人都在意或者愿意去討論對(duì)比Docker和虛擬機(jī)之間的優(yōu)劣或者說(shuō)是優(yōu)缺點(diǎn)。
上網(wǎng)查了一些資料,大同小異。為節(jié)省大家上網(wǎng)的檢所查詢的時(shí)間,我就總結(jié)以下網(wǎng)上的若干結(jié)論。
| Docker | 虛擬機(jī) | |
|---|---|---|
| 性能 | 高,接近物理機(jī) | 低,接近物理機(jī)的50% |
| 安全性 | 低,暫時(shí)沒有權(quán)限管理 | 高,可以完美隔離 |
| 占用資源 | 低,資源共享或使用物理資源 | 高,用物理資源虛擬硬件資源 |
| 啟動(dòng)速度 | 快 | 慢 |
| 配置 | 輕便 | 相對(duì)繁瑣 |
| 體積 | 輕巧 | 巨大 |
Docker的適用場(chǎng)景
Docker其實(shí)可以看做是PaaS的一種,故適用于PaaS的場(chǎng)景都可以使用Docker。
安裝
MacOS
https://docs.docker.com/docker-for-mac/
Windows
https://docs.docker.com/docker-for-windows/
常用命令
顯示所有image
docker image ls
可能顯示類似下面的信息:
REPOSITORY TAG IMAGE ID CREATED SIZE
oraclelinux latest 7f518b709a70 2 weeks ago 225 MB
dangerwolf/ubuntu_wolf latest e5a07645890c 4 weeks ago 737 MB
<none> <none> 39d4c5e3d690 4 weeks ago 709 MB
<none> <none> 352bbe0a292f 4 weeks ago 709 MB
<none> <none> 80b2042a2e70 4 weeks ago 709 MB
<none> <none> 924c43bcde51 4 weeks ago 709 MB
tomcat latest 7b6daea9936c 6 weeks ago 355 MB
mysql latest cf725f136fd2 6 weeks ago 383 MB
mongo latest 092cc6fb995c 6 weeks ago 342 MB
ubuntu latest f753707788c5 7 weeks ago 127 MB
wnameless/oracle-xe-11g latest b4d052e20bda 5 months ago 2.23 GB
hub.c.163.com/public/ubuntu 16.04 70b70c987e8f 10 months ago 224 MB
刪除image
通過(guò)rmi命令執(zhí)行的刪除命令屬于物理刪除。
如顯示如下信息則表示刪除成功。
Deleted: sha256:49da04ba733abe7c14fe8b87ac58f2933bda9dc8edc3c1226e4b6ffce5a0f2ca
通過(guò)id進(jìn)行刪除
docker rmi 49da04ba733a
后面的參數(shù)為通過(guò)docekr image ls查出的IMAGE ID。
通過(guò)名稱進(jìn)行刪除
docker rmi oraclelinux
后面的參數(shù)為通過(guò)docekr image ls查出的REPOSITORY。
下載image
docker pull iwakoshi/eclipse
可能會(huì)顯示如下信息:
Using default tag: latest
latest: Pulling from iwakoshi/eclipse
df22f9f3e4ec: Pull complete
a3ed95caeb02: Pull complete
635788c924ce: Pull complete
b7d066d63351: Extracting [> ] 5.571 MB/387.4 MB
6a9ca9be965a: Download complete
dae76836d73b: Download complete
e9527d9fa00d: Download complete
查看Container
docker ps
其顯示結(jié)果可能如下:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
135ef118c2b9 showdoc_wolf:latest "apache2-foreground" 11 minutes ago Up 11 minutes 0.0.0.0:4999->80/tcp showdoc_wolf
登錄docker.io
docker login
其顯示結(jié)果可能如下:
Login with your Docker ID to push and pull images from Docker Hub. If you do not have a Docker ID, head over to https://hub.docker.com to create one.
Username (dangerwolf): dangerwolf
Password:
Login Succeeded
依次輸入用戶名和密碼后(每次輸入均以回車鍵確認(rèn))可完成登錄。
給image打tag
docker tag 135ef118c2b9 dangerwolf/showdoc:latest
docker tag [imageId] [imageName]
tag后面的參數(shù)依次為鏡像ID、用戶名或者組織名、倉(cāng)庫(kù)名和版本。
提交image
docker push dangerwolf/showdoc