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

参考

相关推荐
m0_5695310140 分钟前
《K8s 网络入门到进阶:Service 与 Ingress 原理、部署方案及核心区别对比》
网络·容器·kubernetes
广东大榕树信息科技有限公司41 分钟前
当运维管理面临挑战时,如何借助动环监控系统提升响应能力?
运维·网络·物联网·国产动环监控系统·动环监控系统
wxjlkh41 分钟前
docker 搭建 grafana+prometheus 监控主机资源之node_exporter
docker·grafana·prometheus
The star"'42 分钟前
02-Ansible 基本使用
运维·云计算·ansible
wanhengidc1 小时前
巨 椰 云手机 满足多元需求
运维·服务器·安全·智能手机·云计算
^乘风破浪^1 小时前
Ubuntu部署Xingrin(星环)企业级漏洞扫描与资产管理平台
linux·运维·ubuntu
Lueeee.1 小时前
内核模块符号的导出
linux·运维·服务器
C语言魔术师1 小时前
【linux】linux进程概念(四)(环境变量)
linux·运维·服务器
松涛和鸣1 小时前
DAY32 Linux Thread Programming
linux·运维·数据库·算法·list
eggrall1 小时前
《gdb 与 cgdb 深度解析:命令行调试的效率革命》
linux