写点什么

Docker 运行环境安装

  • 2024-10-29
    北京
  • 本文字数:2865 字

    阅读完需:约 9 分钟

作者:京东科技 林中


Docker 是一个开放的平台,用于开发、发布和运行应用程序。Docker 分离了应用程序和运行应用的基础设施,从而实现了软件的快速交付。利用 docker 提供的一系列功能,包括构建、发布、测试和部署,可以帮助开发人员将最新版本代码应用到生产环境中。


Docker 可以安装在多个平台中,包括 Mac、Windows 和 Linux。不过,生产环境还是推荐在 Linux 上运行,以下以主流的 Linux 操作系统(CentOS 和 ubuntu)为例,说明 Docker 运行环境的安装过程。


一、安装


1、CentOS


1.1、检查操作系统版本


Docker 官方建议使用最新的稳定版本 CentOS 9(stream)。不过,从 docker-ce 的发布软件包来看,仍然支持 CentOS7 和 CentOS8。详细情况可参考清华大学的镜像站,https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/


1.2、卸载老版本的 docker 或 docker-engine


如果你之前安装过 docker,使用以下命令删除旧的版本和依赖软件。


sudo yum remove docker \                 docker-client \                 docker-client-latest \                 docker-common \                 docker-latest \                 docker-latest-logrotate \                 docker-logrotate \                 docker-engine
复制代码


需要说明的是:删除旧版本 docker,并不会删除使用中的镜像、容器实例、存储卷和网络配置,这些内容仍然保存在/var/lib/docker 目录下。


1.3、安装 docker 运行环境


安装 docker engine 的方法有多种,


1)docker 官方提供的 yum 安装源仓库(repositories),可以方便的实现安装和更新任务。 这也是官方推荐的方式。


2)下载 docker 的 RPM 软件包,手工进行安装和后续的更新。这个方式一般是在企业内网环境中,无法访问 internet 的情况下采用。


3)使用自动化的安装脚本https://get.docker.com/,自动完成安装。适合于开发和测试环境。缺点是,因为国家网络安全管理的限制,如何获取这个脚本?本身就是一个问题。建议初学者,还是应该掌握软件包管理的方法(yum,或者 rpm),不要过度依赖于安装脚本。


需要注意的是:安装脚本中默认使用了国外的安装源,文件的下载速度较低。脚本中允许指定国内的两个安装源, --mirror=Aliyun(或者 AzurechinaCloud),可以加快部署。


以下使用方式 1(docker 官方提供的 yum 安装源仓库)进行安装:


1、安装 yum 仓库管理工具,下载 repo 文件,并把软件仓库地址替换为国内镜像站


sudo yum install -y yum-utilssudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.reposed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce
复制代码


需要注意的是:当 download.docker.com 无法访问时,可以通过国内镜像站替代,比如:https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo


2、安装 docker engine、containerd 和 docker-compose


2.1 安装最新版本


sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
复制代码


2.2 (可选)安装指定版本


1)获取仓库中可用的版本清单


yum list docker-ce --showduplicates | sort -rdocker-ce.x86_64    3:27.1.1-1.el9    docker-ce-stabledocker-ce.x86_64    3:27.1.0-1.el9    docker-ce-stable<...>
复制代码


说明:VERSION_STRING = 3:27.1.1-1.el9


2)安装指定的版本


sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin
复制代码


3)启动 docker


sudo systemctl start docker
复制代码


2、ubuntu


注意:防火墙限制


Docker 仅兼容 iptables-nft 和 iptables-legacy,使用 nft 创建的防火墙规则在 docker 环境下不生效。


2.1、检查操作系统版本


Docker 官方建议使用的版本包括,


              Ubuntu Noble 24.04 (LTS)
Ubuntu Jammy 22.04 (LTS)
Ubuntu Focal 20.04 (LTS)
复制代码


不过,从 docker-ce 的发布软件包来看,仍然支持 ubuntu 的历史版本。详细情况可参考清华大学的镜像站,https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/dists/。


2.2、卸载老版本的 docker 或 docker-engine


如果你之前安装过 docker,使用以下命令删除旧的版本和依赖软件:


for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
复制代码


说明:删除旧版本 docker,并不会删除使用中的镜像、容器实例、存储卷和网络配置,这些内容仍然保存在/var/lib/docker 目录下。


2.3、安装 docker 运行环境


安装 docker engine 的方法有多种,


1)docker 官方提供的 apt 安装源仓库(repository)


2)手工进行安装和后续的更新。


3)使用自动化的安装脚本https://get.docker.com/,适合于开发和测试环境。


以下使用方式 1(docker 官方提供的 apt 安装源仓库)进行安装:


1、首先安装依赖:


apt-get updateapt-get install ca-certificates curl gnupg
复制代码


2、信任 Docker 的 GPG 公钥并添加仓库:


install -m 0755 -d /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpgsudo chmod a+r /etc/apt/keyrings/docker.gpgecho \  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \  tee /etc/apt/sources.list.d/docker.list > /dev/null
复制代码


3、最后安装


3.1 安装最新版本


sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
复制代码


3.2 (可选)安装指定版本


1)获取仓库中可用的版本清单


apt-cache madison docker-ce | awk '{ print $3 }'
复制代码


5:27.1.1-1~ubuntu.24.04~noble


5:27.1.0-1~ubuntu.24.04~noble


...


说明:VERSION_STRING=5:27.1.1-1~ubuntu.24.04~noble


2)安装指定的版本


VERSION_STRING=5:27.1.1-1~ubuntu.24.04~noblesudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
复制代码


3)启动 docker


sudo systemctl start docker
复制代码


二、配置 docker 镜像国内加速


创建或更新文件:/etc/docker/daemon.json,内容如下:


{    "registry-mirrors": [        "https://docker.m.daocloud.io",        "https://docker.nju.edu.cn",        "https://dockerproxy.com",        "https://docker.udayun.com",        "https://noohub.ru",        "https://huecker.io",        "https://dockerhub.timeweb.cloud"    ]}
复制代码


配置完成后,需要重新启动 docker


sudo systemctl restart docker
复制代码


三、运行 hello-world 镜像,验证安装结果


sudo docker run hello-world
复制代码


说明:以上命令执行过程中,会首先拉取 hello-world 镜像,然后运行容器实例,当看到控制台中显示包含“Hello from Docker!”的提示信息时,表示安装成功。

发布于: 刚刚阅读数: 4
用户头像

拥抱技术,与开发者携手创造未来! 2018-11-20 加入

我们将持续为人工智能、大数据、云计算、物联网等相关领域的开发者,提供技术干货、行业技术内容、技术落地实践等文章内容。京东云开发者社区官方网站【https://developer.jdcloud.com/】,欢迎大家来玩

评论

发布
暂无评论
Docker运行环境安装_京东科技开发者_InfoQ写作社区