日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker卸载命令_Docker入门篇

發(fā)布時間:2023/12/13 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker卸载命令_Docker入门篇 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Docker簡介

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

Docker優(yōu)勢

持續(xù)集成、版本控制、可移植性、隔離性和安全

Docker的組成

Docker組成

  • 鏡像(image):

Docker鏡像就相當(dāng)于是一個文件系統(tǒng),通俗來說就是為容器用來創(chuàng)建容器的

  • 容器(Container):

Docker 利用容器 (Container) 獨(dú)立運(yùn)行的一個或一組應(yīng)用,容器是用鏡像創(chuàng)建的運(yùn)行實(shí)例,它可以被啟動、開始、停止、刪除,每個容器都是相互隔離的、保證安全的平臺,可以把容器看做是一個簡易版的Linux系統(tǒng)。

容器就相當(dāng)于Java中的對象,鏡像相當(dāng)于Java中的類

  • 倉庫(Repository)

倉庫是集中存放鏡像文件的場所

倉庫注冊服務(wù)器 (Registry) 上往往存放著多個倉庫,每個倉庫中又包含了多個鏡像,每個鏡像有不同的標(biāo)簽

倉庫分為公開倉庫和私有倉庫兩種形式

最大的公開倉庫是DockerHub存放了數(shù)量龐大的鏡像供用戶下載,國內(nèi)的公開倉庫包括阿里云等

Docker的底層原理

Docker的工作原理

Docker是基于C/S結(jié)構(gòu)的系統(tǒng),Docker的守護(hù)進(jìn)程運(yùn)行在Linux服務(wù)器(宿主機(jī))上,當(dāng)我們在Liunx服務(wù)器上(Docker-Client)輸入Docker相關(guān)命令就會被發(fā)送給Doker-Server

為什么Docker比VM(虛擬機(jī))快

1、Docker有著比虛擬機(jī)更少的抽象層,由于Docker不需要Hypervisor實(shí)現(xiàn)硬件資源虛擬化,運(yùn)行在Docker容器上的程序直接使用的都是實(shí)際物理機(jī)的硬件資源,因此在CPU、內(nèi)存利用率上docker將會在效率上有明顯優(yōu)勢。

2、當(dāng)新建一個容器時,Docker不需要和虛擬機(jī)一樣重新加載一個操作系統(tǒng)內(nèi)核,因而避免引導(dǎo)、加載操作系統(tǒng)內(nèi)核返個比較費(fèi)時費(fèi)資源的過程,當(dāng)新建一個虛擬機(jī)時,虛擬機(jī)軟件需要加載GuestOS(虛擬機(jī)中的操作系統(tǒng)),這個新建過程是分鐘級別的,而Docker由于直接利用宿主機(jī)的操作系統(tǒng),則省略了這個復(fù)雜的過程,因此新建一個Docker容器只需要幾秒鐘。

Docker的安裝

1.需要Liunx版本為CentOS7.0以上

2.卸載舊版本(非必須項(xiàng))

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

3.安裝Docker所需要依賴

yum install -y yum-utils device-mapper-persistent-data lvm2

4.設(shè)置鏡像倉庫

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

5.安裝Docker

yum -y install docker-ce

6.設(shè)置阿里云鏡像加速

sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' {"registry-mirrors": ["https://qhyb8ixp.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

7.開啟Dcoker服務(wù)

service docker start

8.測試Docker-HelloWorld程序

[root@iZ8vbi9mx98t2s78lyxfpuZ ~]# docker run hello-world Unable to find image 'hello-world:latest' locally docker run hello-worldlatest: Pulling from library/hello-world 0e03bdcc26d7: Already exists Digest: sha256:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1 Status: Downloaded newer image for hello-world:latestHello from Docker! --> 出現(xiàn)這句話代表Docker安裝沒有問題 This message shows that your installation appears to be working correctly.

9.卸載Docker

#1. 卸載依賴 yum remove docker-ce docker-ce-cli containerd.io #2. 刪除資源 /var/lib/docker 是docker的默認(rèn)工作路徑! rm -rf /var/lib/docker

Docker幫助命令

1. docker version # 顯示Docker的版本信息 2. docker info # 顯示Docker的系統(tǒng)信息(包含鏡像與容器的數(shù)量) 3. docker 命令 --help # 查看幫助(就是顯示這個命令有什么可選項(xiàng))

Docker鏡像命令

  • docker images:顯示本機(jī)上所有安裝鏡像
  • [root@MT ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE centos latest 470671670cac 4 months ago 237MB hello-world latest bf756fb1ae65 4 months ago 13.3kB# 可選項(xiàng) docker images -a # 列出所有的鏡像 docker images -q # 只顯示鏡像的id[root@MT ~]# docker images -aq 470671670cac bf756fb1ae65
  • docker search:搜索鏡像
  • [root@MT ~]# docker search mysql(鏡像名)NAME DESCRIPTION STARS mysql MySQL is a widely used, open-source relation… 9553 mariadb MariaDB is a community-developed fork of MyS… 3471 # 可選項(xiàng) docker search mysql -f=STARS=3000 # 列出鏡像星數(shù)大于3000的鏡像
  • docker pull:下載鏡像
  • [root@MT ~]# docker pull mysql # 下載最新版本的MySQL [root@MT ~]# docker pull mysql:5.7 # 下載指定版本的MySQL
  • docker rmi:刪除鏡像
  • docker rmi -f 鏡像id # 刪除指定的鏡像 docker rmi -f 鏡像id 鏡像id 鏡像id 鏡像id # 刪除指定的鏡像 docker rmi -f $(docker images -aq) # 刪除全部的鏡像

    Docker容器命令

  • docker run [可選參數(shù)] 鏡像名
  • [root@MT ~]# docker run 可選參數(shù) 鏡像名# 可選參數(shù) --name=”xxx“ # 容器名字 -d # 后臺模式運(yùn)行 -it # 使用交互模式運(yùn)行,進(jìn)入容器查看內(nèi)容 -p(小學(xué)) # 指定端口映射 如:-p 8080(宿主機(jī)):8080(容器) -P(大寫) # 隨機(jī)端口映射# 測試啟動進(jìn)入與退出容器 [root@MT ~]# docker run -it centos /bin/bash # /bin/bash 是使用命令行進(jìn)入 [root@6130f0353526 /]# ls # 此時已經(jīng)進(jìn)入Docker的CentOS容器 bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var [root@6130f0353526 /]# exit exit [root@MT ~]#
  • docker ps [可選參數(shù)]:列出運(yùn)行的容器
  • [root@MT ~]# docker ps 可選參數(shù)# 可選參數(shù) -a # 列出正在運(yùn)行和歷史運(yùn)行過的容器 -q # 列出容器ID[root@MT ~]# docker ps -aq 6130f0353526 895577bc1ae7 f9fc9c23267d faab3fceb1d3
  • 退出容器
  • exit # 容器直接退出 Ctrl + P + Q # 容器不停止退出
  • 刪除容器
  • docker rm -f 容器id # 刪除指定容器(不能刪除正在運(yùn)行的,如需要rm-rf) docker rm -f $(docker ps -aq) # 刪除所有容器
  • 啟動和停止容器操作
  • docker start 容器id # 啟動容器 docker restart 容器id # 重啟容器 docker stop 容器id # 停止正在運(yùn)行的容器 docker kill 容器id # 強(qiáng)制停止

    Docker其它命令

    容器后臺方式運(yùn)行

    [root@MT ~]# docker run -d centos 748d11ff226983ab8281fc6741087e6a3f349ad03f0cadafcd215aed894978dc [root@MT ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES# 問題:我們此時已經(jīng)發(fā)現(xiàn)啟動CentOS,但是確查不到正在運(yùn)行的容器# 解釋:Docker容器使用后臺運(yùn)行,就必須要有要一個前臺進(jìn)程,Docker發(fā)現(xiàn)沒有應(yīng)用,就會自動停止

    查看日志

    docker logs -tf 容器id # 查看實(shí)時日志 docker logs -t --tail 數(shù)量 容器id # 查看指定數(shù)量的日志

    查看容器中的進(jìn)程信息

    docker top 容器id

    查看鏡像的元數(shù)據(jù)

    docker inspect 容器id

    進(jìn)入當(dāng)前正在運(yùn)行的容器

    # 通常我們是使用后臺方式運(yùn)行容器,因?yàn)槲覀兛赡苄枰M(jìn)入容器,修改配置# docker exec -it 容器ID /bin/bash (常用) # docker attach 容器ID# exec方式:就是類似新開一個窗口連接運(yùn)行的容器 # attach方式:就是直接連入當(dāng)前的容器

    拷貝容器內(nèi)文件到宿主機(jī)中

    docker cp 容器id:文件路徑(容器內(nèi)) 目的路徑(宿主機(jī)) [root@MT ~]docker cp 1a9a6785c37c:/home/c.java /home/

    Docker安裝Nginx

    # 1. 搜索鏡像 search 建議大家去docker搜索,可以看到幫助文檔 docker search nginx # 2. 拉取鏡像 docker pull nginx docker pull nginx # 3. 運(yùn)行測試# -d 后臺運(yùn)行# --name 給容器命名# -p 宿主機(jī)端口:容器內(nèi)部端口(我這里使用阿里云的3344端口,前提要在阿里云安全組開放次端口) docker run -d --name nginx -p 3344:80 nginx # 4.查看鏡像 docker ps # 5.測試是否成功 curl localhost:3344 # 或者在瀏覽器輸入ip:3344

    Docker安裝Tomcat

    # 下載tomcat鏡像 docker pull tomcat:9.0 # 運(yùn)行tomcat鏡像 docker run -d tomcat -p 3344:8080 tomcat # 測試 curl localhost:3344 # 此時發(fā)現(xiàn)無法訪問 # 原因:tomcat容器里面webapps目錄下沒有文件 # 進(jìn)入容器 docker exec -it ef41045bea2b /bin/bash cp -r webapps.dist/* webapps # 重新測試 在瀏覽器輸入ip:3344 --> 發(fā)現(xiàn)成功訪問 原文鏈接:https://developer.aliyun.com/article/768663
    作者:Fortuneteller

    總結(jié)

    以上是生活随笔為你收集整理的docker卸载命令_Docker入门篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。