前言

本文介绍了在Linux环境下安装Docker以及docker-compose的过程。
安装的环境为类RadHat的linux操作系统。
CPU是arm架构的,所以要找arm版本的安装包。


一、安装包准备

docker安装包准备

本次是在离线下安装,无法使用yum安装,而使用rpm安装需要大量的依赖包,安装起来非常麻烦,所以本次安装采用静态编译版本安装。

在docker官网找到对应的安装包
https://download.docker.com/
找到static版本

记得找到arm版本的安装包,一般标注arrch64的是arm架构安装包。安装过程并没有区别。
找到合适的版本,本次这里使用的是20.10版本的安装包。

docker.service文件

安装static版本需要准备一个docker.service文件,文件的内容如下:

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

需要注意,文件内容中的ExecStart=/usr/bin/dockerd,表明docker的工作目录,所以接下来的安装需要将文件解压到这个路径下。

daemon.json文件

安装docker还需要一个daemon.js文件。该文件的内容可以先简单设置一下docker数据的存储目录:

{
    "data-root": "/data/docker"
}

注意这个目录一定要存在。

关于本文件的其他设置的作用另做讨论。

docker-compose安装包准备

docker-compose在github能够直接下载:
在这里插入图片描述

在Release的Tags中找到合适的版本(最好不要太高,要和docker版本兼容)
在这里插入图片描述

注意要选择arm版本的文件,下载得到一个docker-compose文件。

二、安装docker

上传docker安装文件到/data/packages
解压docker安装文件

tar -zxvf /data/packages/dockerConf/docker-20.10.23.tgz -C /data/packages/

复制文件

cp -p /data/packages/docker/* /usr/bin

将docker.service文件上传至/usr/lib/systemd/system/

cp /data/packages/dockerConf/docker.service /usr/lib/systemd/system/docker.service

创建工作文件夹

mkdir /etc/docker

将daemon.json拷贝到该文件夹下

cp /data/packages/dockerConf/daemon.json /etc/docker/

配置文件生效

systemctl daemon-reload
开启自启动
systemctl enable docker
启动docker
systemctl start docker

三、安装docker-compose

拷贝安装文件

cp /data/packages/dockerConf/docker-compose-linux-arrch64 /usr/bin/docker-compose

赋权限

chmod+x /usr/bin/docker-compose

检查是否安装成功

docker-compose -v

安装完毕


总结

本文总结了docker以及docker-compose的安装方法。
使用静态编译版本安装包,在类RadHat的操作系统中离线安装docker以及docker-compose。
不同架构的安装方法是一致的,只是安装包不同。
本文中出现的文件名称以及非关键路径可能会与实际有偏差。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐