成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在 Ubuntu 22.04 LTS 中安裝 Docker 和 Docker Compose

系統 Linux
在 Ubuntu 中使用 Docker Compose 安裝 Docker 引擎的分步指導。

點擊參加51CTO網站內容調查問卷

在這篇文章中,我們將會明白 Docker 是什么,如何 在 Ubuntu 中安裝 Docker 引擎 。此外,我們也將會明白如何 安裝 Docker Compose ,它是一個定義并運行多容器的 Docker 應用。

我們已經在 Ubuntu 22.04 LTS 中正式的測試了這份指南。然而,它也應該對舊版本如 20.04 LTS 和 18.04 LTS 有效。為了更好的安全性和穩定性,我推薦你使用最新的版本 —— Ubuntu 22.04 LTS 。

什么是 Docker ?

Docker 是一個快捷、輕便的系統級虛擬化技術,開發者和系統管理員可以使用它構建具備所有必要依賴項的應用程序,并將其作為一個包發布。

Docker 與其他如 VMWare 、Xen 、以及 VirtualBox 等工具的虛擬化方式不同,每個虛擬機不需要單獨的客戶操作系統。

所有的 Docker 容器有效地共享同一個主機系統內核。每個容器都在同一個操作系統中的隔離用戶空間中運行。

Docker 容器可以在任何 Linux 版本上運行。比如說你使用 Fedora ,我用 Ubuntu 。我們能相互開發、共享并分發 Docker 鏡像。

你無需擔心操作系統、軟件以及自定義設置,任何事都不用擔心。只要我們的主機安裝了 Docker ,就能持續開發。簡言之,Docker 能夠在任何地方運行!

前文中你讀到了兩個詞:Docker 鏡像 和 Docker 容器 ,或許你在想它們的區別。

通俗地說,Docker 鏡像是一個描述容器應該如何表現的文件,而 Docker 容器是 Docker 鏡像的運行(或停止)狀態。

希望你能夠理解 Docker 的基礎概念。更多細節,你可以參考文章末尾的 Docker 官方指導手冊。

Docker 依賴項

為了安裝并配置 Docker ,你的系統必須滿足下列最低要求:

  1. 64 位 Linux 或 Windows 系統
  2. 如果使用 Linux ,內核版本必須不低于 3.10
  3. 能夠使用sudo 權限的用戶
  4. 在你系統 BIOS 上啟用了 VT(虛擬化技術)支持 on your system BIOS(參考:如何查看 CPU 支持 虛擬化技術(VT)
  5. 你的系統應該聯網

在 Linux ,在終端上運行以下命令驗證內核以及架構詳細信息:

$ uname -a

輸出樣例:

Linux Ubuntu22CT 5.15.35-3-pve #1 SMP PVE 5.15.35-6 (Fri, 17 Jun 2022 13:42:35 +0200) x86_64 x86_64 x86_64 GNU/Linux

正如上面你看到的那樣,我的 Ubuntu 系統內核版本是 5.15.35-3-pve 并且系統架構是 64 位x86_64 x86_64 x86_64 GNU/Linux)。


注意: 這里,我在 Proxmox 中使用 Ubuntu 22.04 容器。這是你看到上方內核版本中有 “pve” 字符的原因。如果你正在使用 Ubuntu 實體(或者虛擬)機,你將看到系統版本為 5.15.35-3-generic 。


內核版本需要不低于最低要求的版本,并且是 64 位機器。這樣不會有任何問題,我們能順利安裝并使用 Docker 。

請注意你使用哪一個 Ubuntu 系統不重要。并且你使用 Ubuntu 桌面或服務器版本,亦或者其他 Ubuntu 變種如 Lubuntu 、Kubuntu 、Xubuntu ,都不重要。

只要你的系統內核版本不低于 3.10 ,并且是 64 位系統,Docker 都會正常運行。

在 Ubuntu 22.04 LTS 中安裝 Docker

首先,更新你的 Ubuntu 系統。

1、更新 Ubuntu

打開終端,依次運行下列命令:

$ sudo apt update
    $ sudo apt upgrade
    $ sudo apt full-upgrade

2、添加 Docker 庫

首先,安裝必要的證書并允許 apt 包管理器使用以下命令通過 HTTPS 使用存儲庫:

$ sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release

然后,運行下列命令添加 Docker 的官方 GPG 密鑰:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

添加 Docker 官方庫:

$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

使用命令更新 Ubuntu 源列表:

$ sudo apt update

3、安裝 Docker

最后,運行下列命令在 Ubuntu 22.04 LTS 服務器中安裝最新 Docker CE:

$ sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Install Docker In Ubuntu

Install Docker In Ubuntu

當然你也可以安裝其他版本 Docker 。運行下列命令檢查可以安裝的 Docker 版本:

$ apt-cache madison docker-ce

輸出樣例:

docker-ce | 5:20.10.17~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
    docker-ce | 5:20.10.16~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
    docker-ce | 5:20.10.15~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
    docker-ce | 5:20.10.14~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
    docker-ce | 5:20.10.13~3-0~ubuntu-jammy | https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages

你可以挑選上面列表中的任何版本進行安裝。例如,安裝 5:20.10.16~ 3-0 ~ubuntu-jammy 這個版本,運行:

$ sudo apt install docker-ce=5:20.10.16~3-0~ubuntu-jammy docker-ce-cli=5:20.10.16~3-0~ubuntu-jammy containerd.io

安裝完成后,運行如下命令驗證 Docker 服務是否在運行:

$ systemctl status docker

你會看到類似下面的輸出:

* docker.service - Docker Application Container Engine
         Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
         Active: active (running) since Mon 2022-06-27 13:07:43 UTC; 3min 4s ago
    TriggeredBy: * docker.socket
           Docs: https://docs.docker.com
       Main PID: 2208 (dockerd)
          Tasks: 8
         Memory: 29.6M
            CPU: 126ms
         CGroup: /system.slice/docker.service
                 `-2208 /usr/bin/dockerd -H fd:// --cnotallow=/run/containerd/containerd.sock
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.071453522Z" level=info msg="ccResolverWrapper: sending update to cc: {[{unix:>
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.071459974Z" level=info msg="ClientConn switching balancer to \"pick_first\"" >
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.130989294Z" level=info msg="Loading containers: start."
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.187439756Z" level=info msg="Default bridge (docker0) is assigned with an IP a>
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.235966874Z" level=info msg="Loading containers: done."
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.240149866Z" level=warning msg="Not using native diff for overlay2, this may c>
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.240281966Z" level=info msg="Docker daemon" commit=a89b842 graphdriver(s)=over>
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.240386856Z" level=info msg="Daemon has completed initialization"
    Jun 27 13:07:43 Ubuntu22CT systemd[1]: Started Docker Application Container Engine.
    Jun 27 13:07:43 Ubuntu22CT dockerd[2208]: time="2022-06-27T13:07:43.276336600Z" level=info msg="API listen on /run/docker.sock"

好極了!Docker 服務已啟動并運行!

如果沒有運行,運行以下命令運行 Docker 服務:

$ sudo systemctl start docker

使 Docker 服務在每次重啟時自動啟動:

$ sudo systemctl enable docker

可以使用以下命令查看已安裝的 Docker 版本:

$ sudo docker version

輸出樣例:

Client: Docker Engine - Community
      Version:           20.10.17
      API version:       1.41
      Go version:        go1.17.11
      Git commit:        100c701
      Built:             Mon Jun  6 23:02:46 2022
      OS/Arch:           linux/amd64
      Context:           default
      Experimental:      true
    Server: Docker Engine - Community
      Engine:
        Version:          20.10.17
        API version:      1.41 (minimum version 1.12)
        Go version:       go1.17.11
        Git commit:       a89b842
      Built:            Mon Jun  6 23:00:51 2022
        OS/Arch:          linux/amd64
        Experimental:     false
      containerd:
        Version:          1.6.6
        GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
      runc:
        Version:          1.1.2
        GitCommit:        v1.1.2-0-ga916309
      docker-init:
        Version:          0.19.0
        GitCommit:        de40ad0

Check Docker Version

Check Docker Version

4、測試 Docker

讓我們繼續,測試 Docker 是否運行正常:

運行:

$ sudo docker run hello-world

上述命令會下載一個 Docker 測試鏡像,并在容器內執行一個 “hello_world” 樣例程序。

如果你看到類似下方的輸出,那么祝賀你!Docker 正常運行在你的 Ubuntu 系統中了。

Unable to find image 'hello-world:latest' locally
    latest: Pulling from library/hello-world
    2db29710123e: Pull complete 
    Digest: sha256:13e367d31ae85359f42d637adf6da428f76d75dc9afeb3c21faea0d976f5c651
    Status: Downloaded newer image for hello-world:latest
    Hello from Docker!
    This message shows that your installation appears to be working correctly.
    To generate this message, Docker took the following steps:
     1. The Docker client contacted the Docker daemon.
     2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
        (amd64)
     3. The Docker daemon created a new container from that image which runs the
        executable that produces the output you are currently reading.
     4. The Docker daemon streamed that output to the Docker client, which sent it
        to your terminal.
    To try something more ambitious, you can run an Ubuntu container with:
     $ docker run -it ubuntu bash
    Share images, automate workflows, and more with a free Docker ID:
     https://hub.docker.com/
    For more examples and ideas, visit:
     https://docs.docker.com/get-started/

Run Hello World Docker Container

Run Hello World Docker Container

很好!可以使用 Docker 了。

5、作為非 root 用戶運行 Docker (選做)

默認情況下,Docker 守護進程綁定到 Unix 套接字而不是 TCP 端口。由于 Unix 套接字由 root 用戶擁有,Docker 守護程序將僅以 root 用戶身份運行。因此,普通用戶無法執行大多數 Docker 命令。

如果你想要在 Linux 中作為非 root 用戶運行 Docker ,參考下方鏈接:

我個人不這樣做也不推薦你這么做。如果你不會在互聯網上暴露你的系統,那沒問題。然而,不要在生產系統中以非 root 用戶身份運行 Docker 。

在 Ubuntu 中安裝 Docker Compose

Docker Compose 是一個可用于定義和運行多容器 Docker 應用程序的工具。使用 Compose,你可以使用 Compose 文件來配置應用程序的服務。然后,使用單個命令,你可以從配置中創建和啟動所有服務。

下列任何方式都可以安裝 Docker Compose 。

方式 1、使用二進制文件安裝 Docker Compose

從 這里 下載最新 Docker Compose 。

當我在寫這篇文章時,最新版本是 2.6.1 。

運行下列命令安裝最新穩定的 Docker Compose 文件:

$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.6.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

如果有更新版本,只需要將上述命令中的 v2.6.1 替換為最新的版本號即可。請不要忘記數字前的 "v" 。

最后,使用下列命令賦予二進制文件可執行權限:

$ sudo chmod +x /usr/local/bin/docker-compose

運行下列命令檢查安裝的 Docker Compose 版本:

$ docker-compose version
    Docker Compose version v2.6.1

方式 2、使用 Pip 安裝 Docker Compose

或許,我們可以使用 Pip 安裝 Docker Compose 。Pip 是 Python 包管理器,用來安裝使用 Python 編寫的應用程序。

參考下列鏈接安裝 Pip 。

安裝 Pip 后,運行以下命令安裝 Docker Compose。下列命令對于所有 Linux 發行版都是相同的!

$ pip install docker-compose

安裝 Docker Compose 后,使用下列命令檢查版本:

$ docker-compose --version

你將會看到類似下方的輸出:

docker-compose version 2.6.1, build 8a1c60f6

恭喜你!我們已經成功安裝了 Docker 社區版和 Docker Compose 。

安裝了 Docker,然后呢?查看本系列的下一篇文章,了解 Docker 基礎知識。

要在基于 RPM 的系統(例如 RHEL、Fedora、CentOS、AlmaLinux、Rocky Linux 和 openSUSE)中安裝 Docker,請參考以下鏈接。

總結

在這篇教程中,我們討論了 Docker 是什么,如何在 Ubuntu 22.04 LTS Jammy Jellyfish 中安裝

Docker 。然后學習了如何通過運行 hello-world Docker 鏡像測試 Docker

是否成功安裝。最后,我們通過使用兩種不同的方式安裝 Docker Compose 作為本教程的結尾。

資料

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2023-07-05 16:45:30

WiresharkLinux

2022-05-29 10:28:56

Ubuntusudo 密碼桌面環境

2022-05-23 15:56:32

UbuntuLinux

2024-01-04 11:50:00

UbuntuDocker

2022-06-12 11:20:55

雙啟動Windows 11Ubuntu

2023-09-12 10:23:28

2022-09-01 08:37:50

Ubuntu發行版

2022-04-25 11:16:24

UbuntuLinux

2022-06-14 09:33:15

LinuxGNU Emacs命令

2022-04-27 12:35:42

Unity7桌面環境Ubuntu

2022-04-25 10:34:16

UbuntuLinux 內核穩定版本

2022-11-01 11:40:52

Ubuntu22.0422.10

2018-12-09 13:50:47

UbuntuLinux IP地址

2022-05-10 16:40:09

UbuntuLinux

2020-12-15 08:00:00

KubernetesDocker容器

2022-04-20 08:50:22

Ubuntu升級系統

2022-04-06 12:19:50

LinuxUbuntu

2019-08-19 11:55:10

UbuntuLinux內核

2020-10-17 13:04:35

UbuntuDeepin桌面環境

2023-08-25 15:44:46

Bodhi 7.0Linux
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久免费精品国产小说色大师 | 国产视频h | 亚洲免费一区 | 中国一级特黄视频 | 久国产 | 日韩综合网| 欧美不卡视频 | 国产乱码久久久 | 国产精品久久久久久模特 | 艹逼网| 日韩中文一区二区三区 | 日韩视频在线一区 | 久久精品一级 | 九九热精品在线视频 | 日本高清视频在线播放 | 人人做人人澡人人爽欧美 | 99精品国产一区二区三区 | 国产精品久久久久无码av | 日韩美女一区二区三区在线观看 | www.一区二区三区 | 久久av一区二区三区 | 欧美在线a| 中文字幕中文字幕 | 天天色影视综合 | 久久亚洲天堂 | 国产日韩欧美 | 中文字幕精品一区二区三区精品 | 九九热久久免费视频 | 日韩免费网站 | 日韩视频一区二区在线 | 成人激情免费视频 | 亚洲精品av在线 | 国产一区二区美女 | 久久午夜电影 | 亚洲一区二区三区免费观看 | 天天舔天天 | 国产欧美日韩一区二区三区 | 亚洲一区二区av | 国产欧美性成人精品午夜 | 成人精品国产免费网站 | 日本视频中文字幕 |