BC-Linux8.6上面离线手动安装Docker引擎

目标

在BC-Linux上面手动安装Docker引擎。

步骤

查看防火墙状态

bash 复制代码
[root@localhost x86_64]# sudo systemctl status firewalld.service 
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-06-23 11:47:32 CST; 37s ago
     Docs: man:firewalld(1)
 Main PID: 34278 (firewalld)
    Tasks: 2 (limit: 203405)
   Memory: 26.0M
   CGroup: /system.slice/firewalld.service
           └─34278 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --nopid

Jun 23 11:47:32 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Jun 23 11:47:32 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
[root@localhost x86_64]# sudo firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: enp1s0
  sources: 
  services: cockpit dhcpv6-client ssh
  ports: 
  protocols: 
  forward: no
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules:

卸载已有docker

bash 复制代码
sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine \
                  podman \
                  runc

检查服务器cpu架构

bash 复制代码
[root@localhost ~]# arch
x86_64

检查Linux发行版

bash 复制代码
[root@localhost ~]# cat /etc/*release
BigCloud Enterprise Linux release 8.6 (Core) 
BigCloud Enterprise Linux release 8.6 (Core) 
NAME="BigCloud Enterprise Linux"
VERSION="8.6 (Core)"
ID="bclinux"
ID_LIKE="rhel fedora"
VERSION_ID="8.6"
PLATFORM_ID="platform:an8"
PRETTY_NAME="BigCloud Enterprise Linux 8.6 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:bclinux:bclinux:8"
HOME_URL="https://mirrors.bclinux.org/"
BUG_REPORT_URL="https://bugs.bclinux.org/"

BCLINUX_BUGZILLA_PRODUCT="BigCloud Enterprise Linux 8 (Core)"
BCLINUX_BUGZILLA_PRODUCT_VERSION=8.6
BCLINUX_SUPPORT_PRODUCT="BigCloud Enterprise Linux 8 (Core)"
BCLINUX_SUPPORT_PRODUCT_VERSION=8.6

BigCloud Enterprise Linux release 8.6 (Core)

下载docker引擎安装包

https://download.docker.com/linux/rhel/在这个地址,选择适合的docker离线安装包。

再结合上面的信息,我们直接选择使用如下链接中的安装包:
https://download.docker.com/linux/rhel/8/x86_64/stable/Packages/

下载的离线包如下:

  • containerd.io-1.7.23-3.1.el8.x86_64.rpm
  • docker-buildx-plugin-0.17.1-1.el8.x86_64.rpm
  • docker-ce-27.3.1-1.el8.x86_64.rpm
  • docker-ce-cli-27.3.1-1.el8.x86_64.rpm
  • docker-ce-rootless-extras-27.3.1-1.el8.x86_64.rpm
  • docker-compose-plugin-2.29.7-1.el8.x86_64.rpm
    然后上传上述文件。

安装离线docker包

bash 复制代码
sudo dnf install ./containerd.io-1.7.23-3.1.el8.x86_64.rpm ./docker-ce-27.3.1-1.el8.x86_64.rpm ./docker-ce-cli-27.3.1-1.el8.x86_64.rpm ./docker-buildx-plugin-0.17.1-1.el8.x86_64.rpm ./docker-compose-plugin-2.29.7-1.el8.x86_64.rpm ./docker-ce-rootless-extras-27.3.1-1.el8.x86_64.rpm

尝试启动

尝试启动docker和设置开机自启动,如下命令:

bash 复制代码
# 设置自启动
sudo systemctl enable --now docker
sudo systemctl enable containerd

测试

bash 复制代码
sudo docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

到这里没有报错,就说明docker安装成功。

本来,到这里docker的安装,就应该结束了的,但是,我们现在这个docker需要使用非root账号进行运行。接下来在进一步,设置一下非root用户运行docker配置。

配置非root用户运行Docker

bash 复制代码
# 新建docker用户,并添加到docker用户组
sudo useradd -m -s /bin/bash docker -g docker
# 重新激活用户组设置
newgrp docker
# 设置docker用户密码
sudo passwd docker
# 设置完密码后远程登录docker用户即可
ssh docker@192.168.1.10
# 登录成功后,再次测试docker运行情况:
[docker@localhost ~]$ docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

到这里docker非root用户管理docker配置就设置完成了。由于给的机器磁盘有限,我们需要再进一步,设置docker滚动日志。

配置Docker滚动日志

bash 复制代码
# 新建文件
sudo vim /etc/docker/daemon.json

内容如下:

bash 复制代码
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "700m",
    "max-file": "3"
  }
}

保持该文件后,重启docker:

bash 复制代码
sudo systemctl restart docker

到这里,手动安装docker就告一个段落了。

参考

相关推荐
夏日听雨眠4 分钟前
LInux(逻辑地址与物理地址的区别,文件描述符,lseek函数)
linux·运维·网络
哲霖软件1 小时前
ERP 赋能非标自动化行业:破解物料与库存管理难题
运维·自动化
qq_542515412 小时前
Ubuntu 22.04.4 LTS安装ToDesk最新版打不开,无响应?旧版本4.7.2_277版本分享
linux·ubuntu·todesk
火车叼位2 小时前
替代 Tiny Win10 的 Linux 方案:Debian XFCE 精简桌面搭建
linux·运维
小麦嵌入式2 小时前
FPGA入门(四):时序逻辑计数器原理与 LED 闪烁实现
linux·驱动开发·stm32·嵌入式硬件·fpga开发·硬件工程·dsp开发
皮卡蛋炒饭.3 小时前
传输层协议UDP
linux·网络协议·udp
syagain_zsx3 小时前
Linux指令初识(实用篇)
linux·运维·服务器
OYangxf3 小时前
Git Commit Message
运维·git
Alter12304 小时前
从“力大砖飞”到“拟态共生”,新华三定义AI基础设施的系统级进化
大数据·运维·人工智能
王木风4 小时前
终端里的编程副驾:DeepSeek-TUI-项目深度拆解,实测与原理分析
linux·运维·人工智能·rust·node.js