docker是干什么的,docker常用命令

鏡像下載、域名解析、時間同步請點擊 阿里云開源鏡像站

一、百度百科

Docker是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴到一個可移植的鏡像中,然后發(fā)布到任何流行的Linux或Windows機器上,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口。

一個完成的docker有以下幾個部分組成:

  • DockerClient 客戶端
  • Docker Daemon 守護進程
  • Docker Image 鏡像
  • Docker Container 容器

二、Docker安裝

1、卸載Docker

 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2、需要的安裝包

yum install -y yum-utils

3、設置鏡像倉庫

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

用國內(nèi)的

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

更新軟件包索引

yum mackecache fast

4、安裝Docker相關

ce社區(qū)版,ee企業(yè)版,推薦安裝企業(yè)版

yum install docker-ce docker-ce-cli containerd.io
file

5、啟動Docker

systemctl start docker

6、使用docker version查看版本

file

7、啟動hello world鏡像

docker run hello-world
file

8、卸載

yum remove docker-ce docker-ce-cli containerd.io
rm -rf /var/lib/docker
rm -rf /var/lib/containerd

三、run的流程和docker原理

1、run的流程

file

2、docker原理

file

3、docker為何比VM快?

  • Docker有著比虛擬機更少的抽象層
  • docker利用的是宿主機的內(nèi)核,VM需要的是Guest OS。


    file

四、Docker鏡像常用命令

1、基本命令

docker version

docker info

docker 命令 --help #萬能命令

docker images

file

解釋:

  • REPOSITORY:鏡像的倉庫源
  • TAG:鏡像的標簽
  • IMAGE ID:鏡像的ID
  • CREATE:鏡像的創(chuàng)建時間
  • SIZE:鏡像的大小

可選項

-a:列出全部的鏡像

-q:只顯示鏡像的ID

2、搜索鏡像

docker search

可選項

--filter-STATUS-3000 #搜索大于3000的

3、下載鏡像

指定版本下載

docker pull 鏡像名[:tag]

file

4、刪除鏡像

docker rmi -f 鏡像id 

五、docker容器常用命令

1、下載容器

docker pull centos

2、docker run [可選參數(shù)] image

參數(shù)說明:

  • --name 容器名稱
  • -d 后臺方式運行
  • -it 使用交互方式運行,進入容器查看內(nèi)容(例如:docker run -it centos /bin/bash)
  • -p 指定容器的端口號 -p 8080:8080(主機端口:容器端口)

3、列出所有的運行的容器

docker ps [參數(shù)]

  • -a 列出當前正在運行的容器
  • -n 顯示最近創(chuàng)建的容器
  • -q 只顯示容器的編號

例如:docker ps -aq 顯示當前正在運行的容器的編號

4、退出容器

exit

5、刪除容器

  • docker rm 容器id 不能刪除正在運行的容器
  • docker rm -f $(docker ps -a) 刪除所有的容器
  • docker ps -a -q|xargs docker rm 刪除所有的容器

6、啟動和停止容器

  • docker start 容器id
  • docker restart 容器id
  • docker stop 容器id
  • docker kill 容器id 強制停止

7、進入當前正在運行的容器

  • 方式一:docker exec -it 容器id /bin/bash 進入容器后開啟一個新的終端(常用)
  • 方式二:docker attach 容器id 進入容器當前正在執(zhí)行的終端

8、從容器內(nèi)拷貝文件到主機

docker cp 容器id:容器內(nèi)路徑 主機路徑

例如:docker cp 容器id:/home/test.java /home

9、其它常用命令

(1)后臺啟動容器 -d

(2)查看日志命令

docker logs --help

顯示指定行數(shù)的日志:

docker logs -tf --tail 10 容器id

-f:內(nèi)容,,,-t:時間

例如:循環(huán)執(zhí)行

docker run -d centos /bin/sh -c "while;do echo hello world;sleep 1;done"

(3)顯示容器中的進行信息

查看docker內(nèi)部的進程信息:docker top 容器id

(4)查看容器的元數(shù)據(jù)

docker inspect --help

顯示容器的所有信息:

docker inspect 容器id

file

本文轉(zhuǎn)自:https://blog.csdn.net/guorui_java/article/details/115874500

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容