Debian12安装 Docker

Docker中基本概念

镜像(Image)

镜像,从认识上简单的来说,就是面向对象中的类,相当于一个模板。从本质上来说,镜像相当于一个文件系统。Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

容器(Container)

容器,从认识上来说,就是类创建的实例,就是依据镜像这个模板创建出来的实体。容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。因此容器可以拥有自己的root 文件系统、自己的网络配置、自己的进程空间,甚至自己的用户ID 空间。容器内的进程是运行在一个隔离的环境里,使用起来,就好像是在一个独立于宿主的系统下操作一样。这种特性使得容器封装的应用比直接在宿主运行更加安全。

仓库(Repository)

仓库,从认识上来说,就好像软件包上传下载站,有各种软件的不同版本被上传供用户下载。镜像构建完成后,可以很容易的在当前宿主机上运行,但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。

方法一:使用官方安装脚本自动安装

 curl -fsSL https://get.docker.com -o get-docker.sh
 sudo sh get-docker.sh

方法二:手动安装

对于 Raspbian,尚不支持使用仓库进行安装。您必须改为使用 shell 脚本方式。

卸载旧版本

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

在新主机上首次安装 Docker 引擎之前,您需要 需要设置 Docker Apt 仓库。之后,您可以安装和更新 存储库中的 Docker。

设置 Docker 的 Apt 存储库。

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

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

安装 Docker 软件包

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

通过运行映像验证安装是否成功

sudo docker run hello-world

此命令下载测试映像并在容器中运行它。当 容器运行,它会打印确认消息并退出。

您现在已成功安装并启动 Docker 引擎。

安装后的设置

以非 root 用户身份管理 Docker

创建组 docker

sudo groupadd docker

将您的用户添加到组中

sudo usermod -aG docker $USER

注销并重新登录,以便生效。
或者
您还可以运行以下命令来激活对组的更改

newgrp docker

将 Docker 配置为使用 systemd 启动启动

$ sudo systemctl enable docker.service
$ sudo systemctl enable containerd.service

若要停止此行为,请改用disable

$ sudo systemctl disable docker.service
$ sudo systemctl disable containerd.service

参考

docker install deebian
runoob docker

你可能感兴趣的:(openwrt,jenkins,软件测试,docker,容器,运维)