中文字幕视频在线看,亚洲精品无码久久久久av老牛,亚洲精品无码av片,亚洲av影院一区二区三区,亚洲国产精品成人久久久

linux刪除docker命令

Docker簡介

linux刪除docker命令

2013年發(fā)布至今, Docker 一直廣受矚目,被認為可能會改變軟件行業(yè)。

但是,許多人并不清楚 Docker 到底是什么,要解決什么問題,好處又在哪里?今天就來詳細解釋,幫助大家理解它,還帶有簡單易懂的實例,教你如何將它用于日常開發(fā)。

Docker是一個開源的容器引擎,它有助于更快地交付應用。 Docker可將應用程序和基礎設施層隔離,并且能將基礎設施當作程序一樣進行管理。使用 Docker可更快地打包、測試以及部署應用程序,并可以縮短從編寫到部署運行代碼的周期。

Docker的優(yōu)點如下

1、簡化程序

Docker 讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機器上,便可以實現(xiàn)虛擬化。Docker改變了虛擬化的方式,使開發(fā)者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是 Docker的最大優(yōu)勢,過去需要用數(shù)天乃至數(shù)周的 任務,在Docker容器的處理下,只需要數(shù)秒就能完成。

2、避免選擇恐懼癥

如果你有選擇恐懼癥,還是資深患者。Docker 幫你 打包你的糾結!比如 Docker 鏡像;Docker 鏡像中包含了運行環(huán)境和配置,所以 Docker 可以簡化部署多種應用實例工作。比如 Web 應用、后臺應用、數(shù)據(jù)庫應用、大數(shù)據(jù)應用比如 Hadoop 集群、消息隊列等等都可以打包成一個鏡像部署。

3、節(jié)省開支

一方面,云計算時代到來,使開發(fā)者不必為了追求效果而配置高額的硬件,Docker 改變了高性能必然高價格的思維定勢。Docker 與云的結合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。

Docker的架構

linux刪除docker命令

  • Docker daemon( Docker守護進程)

Docker daemon是一個運行在宿主機( DOCKER-HOST)的后臺進程??赏ㄟ^ Docker客戶端與之通信。

  • Client( Docker客戶端)

Docker客戶端是 Docker的用戶界面,它可以接受用戶命令和配置標識,并與 Docker daemon通信。圖中, docker build等都是 Docker的相關命令。

  • Images( Docker鏡像)

Docker鏡像是一個只讀模板,它包含創(chuàng)建 Docker容器的說明。它和系統(tǒng)安裝光盤有點像,使用系統(tǒng)安裝光盤可以安裝系統(tǒng),同理,使用Docker鏡像可以運行 Docker鏡像中的程序。

  • Container(容器)

容器是鏡像的可運行實例。鏡像和容器的關系有點類似于面向對象中,類和對象的關系??赏ㄟ^ Docker API或者 CLI命令來啟停、移動、刪除容器。

  • Registry

Docker Registry是一個集中存儲與分發(fā)鏡像的服務。構建完 Docker鏡像后,就可在當前宿主機上運行。但如果想要在其他機器上運行這個鏡像,就需要手動復制。此時可借助 Docker Registry來避免鏡像的手動復制。

一個 Docker Registry可包含多個 Docker倉庫,每個倉庫可包含多個鏡像標簽,每個標簽對應一個 Docker鏡像。這跟 Maven的倉庫有點類似,如果把 Docker Registry比作 Maven倉庫的話,那么 Docker倉庫就可理解為某jar包的路徑,而鏡像標簽則可理解為jar包的版本號。

Docker Registry可分為公有Docker Registry和私有Docker Registry。 最常?的Docker Registry莫過于官?的Docker Hub, 這也是默認的Docker Registry。 Docker Hub上存放著?量優(yōu)秀的鏡像, 我們可使?Docker命令下載并使?。

二 Docker的安裝卸載

Docker 是一個開源的商業(yè)產品,有兩個版本:社區(qū)版(Community Edition,縮寫為 CE)和企業(yè)版(Enterprise Edition,縮寫為 EE)。企業(yè)版包含了一些收費服務,個人開發(fā)者一般用不到。下面的介紹都針對社區(qū)版。

Docker CE 的安裝請參考官方文檔,我們這里以CentOS為例:

1、Docker 要求 CentOS 系統(tǒng)的內核版本高于 3.10

通過 uname -r 命令查看你當前的內核版本

uname -r

2、使用 root 權限登錄 Centos。確保 yum 包更新到最新。

yum -y update

3、卸載舊版本(如果安裝過舊版本的話)

sudo yum remove -y docker*

4、安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的

yum install -y yum-utils

5、設置yum源,并更新 yum 的包索引

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
linux刪除docker命令

6、可以查看所有倉庫中所有docker版本,并選擇特定版本安裝

yum list docker-ce --showduplicates | sort -r
linux刪除docker命令

7、安裝docker

yum install -y docker-ce-3:19.03.9-3.el7.x86_64 # 這是指定版本安裝

8、啟動并加入開機啟動

systemctl start docker && systemctl enable docker
# 單純啟動
systemctl start docker

9、驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)

docker version
linux刪除docker命令

注意:一般需要配置docker鏡像加速器
我們可以借助阿里云的鏡像加速器,登錄阿里云(
https://cr.console.aliyun.com/#/accelerator)
可以看到鏡像加速地址如下圖:

linux刪除docker命令

cd /etc/docker

查看該目錄有沒有 daemon.json。這是docker默認的配置文件。
如果沒有新建,如果有,則修改。

vim daemon.json
{"registry-mirrors":["https://m9r2r2uj.mirror.aliyuncs.com"]}

保存退出。重啟docker服務

systemctl daemon-reload
systemctl restart docker

10、卸載docker

yum remove -y docker*
rm -rf /etc/systemd/system/docker.service.d
rm -rf /var/lib/docker
rm -rf /var/run/docker

三 Docker常用命令

鏡像相關命令

可使用 docker search命令搜索存放在 Docker Hub中的鏡像。執(zhí)行該命令后, Docker就會在Docker Hub中搜索含有 java這個關鍵詞的鏡像倉庫。

docker search java
linux刪除docker命令

以上列表包含五列,含義如下:

  • NAME:鏡像倉庫名稱。
  • DESCRIPTION:鏡像倉庫描述。
  • STARS:鏡像倉庫收藏數(shù),表示該鏡像倉庫的受歡迎程度,類似于 GitHub的 stars0
  • OFFICAL:表示是否為官方倉庫,該列標記為[0K]的鏡像均由各軟件的官方項目組創(chuàng)建和維護。
  • AUTOMATED:表示是否是自動構建的鏡像倉庫。

使用命令docker pull命令即可從 Docker Registry上下載鏡像,執(zhí)行該命令后,Docker會從 Docker Hub中的 java倉庫下載最新版本的 Java鏡像。如果要下載指定版本則在java后面加冒號指定版本,例如:

# 下載jdk8
docker pull java:8
# 下載nginx(不加版本號的話,下載的就是最新版)
docker pull nginx
linux刪除docker命令

使用 docker images命令即可列出已下載的鏡像

docker images
linux刪除docker命令

以上列表含義如下

  • REPOSITORY:鏡像所屬倉庫名稱。
  • TAG:鏡像標簽。默認是 latest,表示最新。
  • IMAGE ID:鏡像 ID,表示鏡像唯一標識。
  • CREATED:鏡像創(chuàng)建時間。
  • SIZE: 鏡像大小。

使用 docker rmi命令即可刪除指定鏡像,強制刪除加 -f

docker rmi java 

刪除所有鏡像

docker rmi $(docker images -q)

容器相關命令

鏡像需要放在容器里去運行,每個容器相當于一個小的操作系統(tǒng),這些容器 (小操作系統(tǒng)) 也有各自自己的ip

新建并啟動容器

使用以下docker run命令即可新建并啟動一個容器,該命令是最常用的命令,它有很多選項,下面將列舉一些常用的選項。

  • -d選項:表示后臺運行
  • -P選項:隨機端口映射
  • -p選項:指定端口映射,有以下四種格式。

ip:hostPort:containerPort

– ip::containerPort

– hostPort:containerPort

– containerPort

  • –net選項:指定網絡模式,該選項有以下可選參數(shù):

–net=bridge:默認選項,表示連接到默認的網橋,橋接模式,外網訪問不了容器里的內容,只能通過宿主機來訪問。

–net=host:容器使用宿主機的網絡(與宿主機網斷一致),外網直接可以訪問容器,不需要通過宿主機。

–net=container:NAME-or-ID:告訴 Docker讓新建的容器使用已有容器的網絡配置。

–net=none:不配置該容器的網絡,用戶可自定義網絡配置。

# 最后邊需要指定nginx版本號,不指定的話啟動的就是latest最新版本
# 91是宿主機端口,80是docker里的nginx所在的端口,外界瀏覽器訪問的時候訪問91即可
docker run -d -p 91:80 nginx:10

驗證啟動是否成功(查看正在運行的容器)

docker ps

這樣就能啟動一個 Nginx容器。在本例中,為 docker run添加了兩個參數(shù),含義如下:

  • -d 后臺運行
  • -p 宿主機端口:容器端口 #開放容器端口到宿主機端口

訪問?http://Docker宿主機 IP:91/,將會看到nginx的主界面如下:

linux刪除docker命令

需要注意的是,使用 docker run命令創(chuàng)建容器時,會先檢查本地是否存在指定鏡像。如果本地不存在該名稱的鏡像, Docker就會自動從 Docker Hub下載鏡像并啟動一個 Docker容器。

如果換一下端口,再執(zhí)行下邊的命令

# 之前是91,這里改為92
docker run -d -p 92:80 nginx:10

此時訪問http://Docker宿主機 IP:92/依然可以訪問到,因為又新生成了一個容器啟動了一個新的nginx;

用 docker ps命令即可列出運行中的容器

docker ps
linux刪除docker命令

如需列出所有容器(包括已停止的容器),可使用-a參數(shù)。該列表包含了7列,含義如下

  • CONTAINER_ID:表示容器 ID。
  • IMAGE:表示鏡像名稱。
  • COMMAND:表示啟動容器時運行的命令。
  • CREATED:表示容器的創(chuàng)建時間。
  • STATUS:表示容器運行的狀態(tài)。UP表示運行中, Exited表示已停止。
  • PORTS:表示容器對外的端口號。
  • NAMES:表示容器名稱。該名稱默認由 Docker自動生成,也可使用 docker run命令的–name選項自行指定。

使用 docker stop命令,即可停止容器

# 其中f0b1c8ab3633是容器 ID,當然也可使用 docker stop容器名稱來停止指定容器
docker stop f0b1c8ab3633

可使用 docker kill命令發(fā)送 SIGKILL信號來強制停止容器

docker kill f0b1c8ab3633

使用docker run命令,即可新建并啟動一個容器。對于已停止的容器,可使用 docker start命令來啟動

docker start f0b1c8ab3633

查看容器所有詳細信息(容器ip等)

docker inspect f0b1c8ab3633
linux刪除docker命令

這里可以看到容器的ip地址,所以也可以在瀏覽器里,通過這個ip加端口直接訪問容器里的nginx;由于新建容器默認是橋接模式,所以需要改為host模式才能供外網訪問

查看容器日志

# 最后是容器ID
docker container logs f0b1c8ab3633

查看容器里的進程

docker top f0b1c8ab3633

容器與宿主機相互復制文件,從容器里面拷文件到宿主機:

# docker cp 容器id:要拷貝的文件在容器里面的路徑  宿主機的相應路徑 
docker cp 7aa5dc458f9d:/etc/nginx/nginx.conf /mydata/nginx

從宿主機拷文件到容器里面:

docker cp 要拷貝的宿主機文件路徑 容器id:要拷貝到容器里面對應的路徑

進入容器內部

使用docker exec命令用于進入一個正在運行的docker容器。如果docker run命令運行容器的時候,沒有使用-it參數(shù),就要用這個命令進入容器。一旦進入了容器,就可以在容器的 Shell 執(zhí)行命令了

docker exec -it f0b1c8ab3633 /bin/bash  (有的容器需要把 /bin/bash 換成 sh)

容器內安裝vim、ping、ifconfig等指令

apt-get update
apt-get install vim           #安裝vim
apt-get install iputils-ping  #安裝ping
apt-get install net-tools     #安裝ifconfig 

刪除容器
使用 docker rm命令即可刪除指定容器

# 該命令只能刪除已停止的容器,如需刪除正在運行的容器,可使用-f參數(shù)
docker rm f0b1c8ab3633

強制刪除所有容器

docker rm -f $(docker ps -a -q)

版權聲明:本文內容由互聯(lián)網用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權/違法違規(guī)的內容, 請發(fā)送郵件至2705686032@qq.com 舉報,一經查實,本站將立刻刪除。原文轉載: 原文出處:

(0)
尊云-小張的頭像尊云-小張
上一篇 2024 年 5 月 6 日 09:06
下一篇 2024 年 5 月 6 日 09:13

相關推薦

發(fā)表回復

登錄后才能評論

聯(lián)系我們

400-900-3935

在線咨詢: QQ交談

郵件:cong@zun.com

工作時間:365天無休服務 24小時在線

添加微信