Docker简介&在Centos和Ubuntu环境下安装Docker

文章目录

1.Docker简介

Docker 是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖项打包到一个可移植的容器中,然后发布到任何流行的 Linux 或 Windows 操作系统上。Docker 通过使用容器化技术简化了开发流程,并且使得应用可以在几乎任何环境中一致地运行,无需担心环境差异带来的问题。

2.Docker镜像与容器

Docker 镜像是创建 Docker 容器的基础。镜像可以看作是一个只读模板,其中包含了运行应用程序所需要的所有文件.
Docker 容器则是运行中的镜像实例。

当你启动一个 Docker 镜像时,Docker 在该镜像的基础上创建一个新的容器,并为其分配必要的资源(如 CPU、内存)。每个容器都拥有自己的文件系统、IP 地址以及进程空间,但是它们共享宿主机的操作系统内核。这意味着容器相比于传统虚拟机来说更加轻量级、启动更快,并且资源消耗更低。

容器可以被启动、停止、暂停、恢复和删除。当容器停止运行时,其状态会被保存,可以随时重新启动。容器内的更改也可以被保存下来,形成新的镜像版本。

🌟镜像是静态的,而容器是动态的。容器是由镜像创建的,可以认为是镜像的一个运行实例。

3.安装Docker

以下内容皆取自Docker官方文档:
https://docs.docker.com/engine/

3.1 Centos环境

  1. 移除旧版本docker命令
bash 复制代码
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  1. 再输入以下命令:
bash 复制代码
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

下载yum-utils软件包,并配置docker的下载地址源仓库

由于docker官方的安装仓库在国外,下载速度比较慢,可以使用阿里云的镜像站,阿里云提供的文档地址
https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.cc531b11Fy3T8i

bash 复制代码
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
  1. 安装Docker
  • 安装最新版本的Docker
bash 复制代码
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 安装特定版本的Docker:
  1. 首先列出仓库中可用的版本
bash 复制代码
yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64    3:27.1.1-1.el9    docker-ce-stable
docker-ce.x86_64    3:27.1.0-1.el9    docker-ce-stable
<...>
  1. 将 <VERSION_STRING> 替换为所需的版本,然后运行以下命令来安装:
bash 复制代码
sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin
  1. 启动Docker:
bash 复制代码
sudo systemctl start docker
  1. 安装校验:
bash 复制代码
docker --version

3.2 Ubuntu环境

  1. 移除旧版本Docker
bash 复制代码
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
  1. 设置 Docker 的 APT 仓库:
bash 复制代码
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

由于docker官方的安装仓库在国外,下载速度比较慢,可以使用阿里云的镜像站,阿里云提供的文档地址
https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.cc531b11Fy3T8i

bash 复制代码
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]
  1. 安装 Docker 软件包:
  • 安装最新版本的Docker
bash 复制代码
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 安装特定版本的Docker:
  1. 首先列出仓库中可用的版本
bash 复制代码
# List the available versions::
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
...
  1. 选择所需的版本并安装:
bash 复制代码
VERSION_STRING=5:27.1.1-1~ubuntu.24.04~noble
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
  1. 安装校验:
bash 复制代码
docker --version
相关推荐
jyan_敬言24 分钟前
虚拟机centos_7 配置教程(镜像源、配置centos、静态ip地址、Finalshell远程操控使用)
linux·运维·服务器·c语言·数据结构·tcp/ip·centos
白如意i24 分钟前
在CentOS 7上安装Python 3并设置本地编程环境的方法
linux·python·centos
Licky1325 分钟前
Centos中dnf和yum区别对比
linux·运维·架构·centos·bash
温小二的徐凤年10 小时前
ubuntu 22.04 ~24.04 如何修改登录背景
linux·ubuntu·插件
小龙在慢慢变强..10 小时前
Ubuntu 软件仓库镜像使用帮助
linux·ubuntu·https
Aileen_0v010 小时前
【Java宝典】——探索数组的奥秘之旅
java·运维·开发语言·windows·后端·docker·golang
Karen_bluu10 小时前
ROS2 Humble如何初步使用Livox-mid-360激光雷达 (viewer/rviz)以及解决一些问题
ubuntu·机器人
吴半杯12 小时前
Docker安装SVN,搭建自己的本地版本仓库
docker·svn·容器
慕羽★12 小时前
Git常用指令整理【新手入门级】【by慕羽】
linux·git·ubuntu·gitlab·github·仓库·分布式协作
Just_Paranoid14 小时前
828华为云征文|部署知识库问答系统 MaxKB
docker·llm·华为云·rag·anythingllm·ollama·maxkb