如何在Raspberry Pi上安装和使用Docker
Docker是一个容器化平台,可让我们快速构建,测试和部署应用程序,作为可在几乎任何地方运行的可移植,自给自足的容器。
在本教程中,我们将说明如何在Raspberry Pi上安装Docker并探索基本的Docker概念和命令。
准备工作
我们假设我们在Raspberry Pi上安装了Raspbian。
Docker不需要图形界面,最好是使用Raspbian Stretch Lite镜像并启用SSH。
这样,Raspberry Pi将具有更多可用的处理能力和内存来运行Docker容器。
在Raspberry Pi上安装Docker
在Raspberry Pi上安装Docker只需运行一些命令即可。
首先,使用以下“ curl”命令下载Docker安装脚本:
curl -fsSL https://get.docker.com -o get-docker.sh
下载完成后,通过键入以下内容来执行脚本:
sh get-docker.sh
该脚本将检测Linux发行版,安装所需的软件包,并启动Docker。
该过程可能需要几分钟,完成后,脚本将输出有关Docker版本以及如何以非root用户身份使用Docker的信息。
就是这样。
Docker已安装在Pi板上。
在不使用Sudo的情况下执行Docker命令
默认情况下,只有具有管理特权的用户才能执行Docker命令。
要以非root用户身份运行Docker命令而不添加'sudo',我们需要将用户添加到在安装过程中创建的Docker组中。
为此,请输入:
sudo usermod -aG docker $USER
'$USER'是一个环境变量,用于保存用户名。
注销并重新登录,以便刷新组成员身份。
要验证我们是否可以在不使用“ sudo”的情况下运行docker命令,请运行以下命令,该命令将下载测试镜像,将其运行在容器中,打印“ Hello from Docker”消息并退出:
docker container run hello-world
输出看起来像这样:
如何使用Docker
既然已经在Raspberry Pi上设置了Docker,那么让我们看一下基本的Docker概念和命令。
Docker镜像
Docker镜像由一系列文件系统层组成,这些文件系统层代表镜像的Dockerfile中的指令,这些指令构成了可执行的软件应用程序。
镜像是一个不可变的二进制文件,包括应用程序和所有其他依赖项,例如库,二进制文件和运行该应用程序所需的指令。
大多数Docker镜像在Docker Hub上都可用。
它是基于云的注册表服务,除其他功能外,还用于将Docker镜像保存在公共或者私有存储库中。
要从Docker Hub注册表中搜索镜像,请使用“ docker search”命令。
例如,要搜索Debian图像,应输入:
docker search debian
Docker容器
图像的实例称为容器。
容器代表单个应用程序,进程或者服务的运行时。
这可能不是最合适的比较,但是如果我们是程序员,则可以将Docker镜像视为类,而将Docker容器视为类的实例。
要启动,停止,删除和管理容器,请使用“ docker container”命令。
例如,以下命令将基于Debian镜像启动Docker容器。
如果我们在本地没有该图片,则将首先下载该图片:
docker container run debian
Debian容器在启动后将立即停止,因为它没有长时间运行的进程,并且未提供其他任何命令。
容器启动,运行空命令,然后退出。
开关“ -it”允许我们通过命令行与容器进行交互。
要启动交互式容器,请执行以下操作:
docker container run -it debian /bin/bash
root@ee86c8c81b3b:/#
从上方的输出中可以看到,启动容器后,命令提示符已更改,这意味着我们现在是在容器内部进行操作。
要列出正在运行的Docker容器,请使用以下命令:
docker container ls
如果我们没有正在运行的容器,则输出将为空。
要查看所有容器,请将其传递给“ -a”开关:
docker container ls -a
要删除一个或者多个容器,只需复制一个或者多个容器ID,然后将其粘贴在“ container rm”命令之后:
docker container rm c55680af670c