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就告一个段落了。

参考

相关推荐
Karoku0667 分钟前
【docker集群应用】Docker网络与资源控制
运维·数据库·docker·容器
梦游钓鱼13 分钟前
pyshark安装使用,ubuntu:20.04
linux·运维·ubuntu
火龙谷16 分钟前
CentOS7将yum源更换为国内源教程
linux·centos
Jacket Li24 分钟前
Kubeadm 安装 Kubernetes 高可用集群 v1.30.0
云原生·容器·kubernetes
战族狼魂40 分钟前
CentOS 上安装各种应用的命令行总结
linux·运维·centos
学Linux的语莫1 小时前
ansible变量
linux·运维·服务器·ansible
北京迅为1 小时前
【北京迅为】iTOP-4412全能版使用手册-第十二章 Linux系统编程简介
linux·嵌入式硬件·4412开发板
清源妙木真菌1 小时前
Linux:进程控制
linux
爱吃喵的鲤鱼1 小时前
Linux——文件系统清尾、动静态库
linux·运维·服务器
泰山小张只吃荷园1 小时前
期末Python复习-输入输出
java·前端·spring boot·python·spring cloud·docker·容器