Docker使用筆記

2021-07-10 18:46:35 字數 2004 閱讀 7430

docker是乙個輕量級的虛擬化解決方案,相對vmware等完全封裝的管理系統虛擬化技術,docker只是利用linux核心特性對程序進行了隔離。

docker的好處主要體現在運維上

相對於kvm、vmware等,效能較好

對環境依賴進行打包,方便部署和擴容

遮蔽應用差別,便於統一基線管理

docker自身的檔案系統特性,發布系統分發的資料較小

docker分為宿主機、映象(images)、容器(container),宿主機是外部的作業系統,在此之上執行映象,對映象的每一次執行生成乙個容器,同乙個映象生成的不同的容器之間會隔離。

容器內部是一系列的程序,docker推薦容器只執行乙個程序,程序可以在宿主機上看到。

容器採用linux核心的namespace機制對包括網路、pid等進行隔離,利用cgroup進行資源(如可用cpu核數、記憶體)進行限制。

對於網路埠,有多種級別,可以對映(採用緩衝區複製),也可以共用宿主機埠

docker的守護程序採用sudo方式啟動,所有docker命令均採用tcp或者管道方式和守護程序通訊,由守護程序執行

docker需要linux3.8以上核心

windows、mac使用者可以安裝boot2docker,mac可以用homebrew安裝。boot2docker是用virtualbox虛擬了乙個特製的linux系統。

mac下

啟動boot2docker up

ssh到virtualbox內的特製linux的命令列,之後可以使用linux的命令。之後所有命令均執行在該環境中

boot2docker ssh

啟動docker守護程序

docker -dre

posi

tory

: 的形式,如abc:abc

docker images

啟動映象

其中–name abc指出abc是別名,使用container id的地方可以換用別名。

–net host表示共用宿主機上的埠

-d表示按守護程序啟動 im

ages

id可以

從doc

keri

mage

s命令上

得到,也

可以用 :$的形式

run命令相當於依次執行了create和start命令,create命令執行後

docker run –name abc –net host -d $

檢視容器

docker ps

進入到docker容器內的「終端」

其中exec是在容器上執行乙個程序

-ti表示使用程序的標準輸入輸出

$是容器id,可以從docker ps中得到,或者使用別名

docker exec -ti $ /bin/bash

停止容器

注意停止並不會刪除執行時所做的修改,之後可以用restart重新啟動

docker stop $

刪除容器

會刪除該容器執行時所做的修改,可以採用-f引數強制停止容器後刪除

docker rm $

docker打包

.表示在當前目錄尋找dockerfile檔案,該檔案說明了打包方法

dockerfile總是from從乙個映象開始,修改疊加,最終變成新的映象

其中cmd命令只能出現一次,會在容器啟動時執行

docker build -t abc:abc .

發布docker push abc:abc

檢視映象打包歷史,從下至上

docker history $

docker 使用筆記

ubuntu 14.04.2 ltsapt get install docker.iodocker pull ubuntu 檢視image docker images a container啟動時執行shell,執行完後container會退出 docker ps l可檢視 docker run i...

docker使用筆記

1.1.安裝 yum install docker 1.2.啟動 service docker start chkconfig docker on systemctl start docker.service systemctl enable docker.service 1.3.停止 system...

docker使用筆記

docker的原理介紹在網上已經有很多文章了,目前我對docker的理解是 基於映象建立容器,可在容器中進行各種操作。映象內容不可變更,容器內容可變。可將變更後的容器製作為映象,然後隨意部署到各種伺服器。注意 使用docker run命令是新建乙個容器並啟動,每次使用此命令,都會建立乙個新的容器 兩...