银河麒麟操作系统 v10 中离线安装 Docker

十念  金牌会员 | 2024-6-15 02:39:42 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 567|帖子 567|积分 1701

1. 检察系统版本

  1. [root@localhost opt]# cat /etc/os-release
  2. NAME="Kylin Linux Advanced Server"
  3. VERSION="V10 (Lance)"
  4. ID="kylin"
  5. VERSION_ID="V10"
  6. PRETTY_NAME="Kylin Linux Advanced Server V10 (Lance)"
  7. ANSI_COLOR="0;31"
  8. [root@localhost opt]#
复制代码
2. 检察 Linux 内核版本(3.10以上)

  1. [root@localhost opt]# uname -r
  2. 4.19.90-52.22.v2207.ky10.aarch64
  3. [root@localhost opt]# uname -a
  4. Linux localhost.localdomain 4.19.90-52.22.v2207.ky10.aarch64 #1 SMP Tue Mar 14 11:52:45 CST 2023 aarch64 aarch64 aarch64 GNU/Linux
  5. [root@localhost opt]#
复制代码
3. 检察 iptabls 版本(1.4以上)

  1. [root@localhost opt]# iptables --version
  2. iptables v1.8.5 (legacy)
复制代码
4. 判断处置惩罚器架构

  1. [root@localhost opt]# uname -p
  2. aarch64
  3. [root@localhost opt]#
复制代码
可以看到,系统处置惩罚器架构为 ARM 架构;如果为 x86 架构的,则会表现 x86_64;
5. 离线下载 Docker 安装包

https://download.docker.com/linux/static/stable/

点进去,选择想要安装的版本,我这里为了跟测试情况保持同等,下载了一个相对旧点的版本:docker-20.10.6.tgz
下载完成后,上传至服务器 /opt 目录下,然后解压:tar -zxvf docker-20.10.6.tgz
6. 移动解压出来的二进制文件到 /usr/bin 目录中

  1. mv docker/* /usr/bin/
复制代码
然后就可以测试下Docker
  1. [root@localhost opt]# docker -v
  2. Docker version 20.10.6, build 370c289
  3. [root@localhost opt]#
  4. [root@localhost opt]# docker version
  5. Client:
  6. Version:           20.10.6
  7. API version:       1.41
  8. Go version:        go1.13.15
  9. Git commit:        370c289
  10. Built:             Fri Apr  9 22:42:28 2021
  11. OS/Arch:           linux/arm64
  12. Context:           default
  13. Experimental:      true
  14. Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
  15. [root@localhost opt]#
复制代码
此时Docker 还没启动,只是可以看到Docker 的版本信息了。
测试 Docker 启动:
  1. [root@localhost opt]# dockerd
  2. INFO[2024-01-17T16:37:43.099979439+08:00] Starting up                                 
  3. WARN[2024-01-17T16:37:43.105526753+08:00] could not change group /var/run/docker.sock to docker: group docker not found
  4. INFO[2024-01-17T16:37:43.107420618+08:00] libcontainerd: started new containerd process  pid=38904
  5. INFO[2024-01-17T16:37:43.107565679+08:00] parsed scheme: "unix"                         module=grpc
  6. INFO[2024-01-17T16:37:43.107591219+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
  7. INFO[2024-01-17T16:37:43.107642999+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
  8. INFO[2024-01-17T16:37:43.107667279+08:00] ClientConn switching balancer to "pick_first"  module=grpc
  9. INFO[2024-01-17T16:37:43.132250984+08:00] starting containerd                           revision=05f951a3781f4f2c1911b05e61c160e9c30eaa8e version=v1.4.4
  10. INFO[2024-01-17T16:37:43.179400349+08:00] loading plugin "io.containerd.content.v1.content"...  type=io.containerd.content.v1
  11. INFO[2024-01-17T16:37:43.179620610+08:00] loading plugin "io.containerd.snapshotter.v1.aufs"...  type=io.containerd.snapshotter.v1
  12. INFO[2024-01-17T16:37:43.183035159+08:00] loading plugin "io.containerd.snapshotter.v1.btrfs"...  type=io.containerd.snapshotter.v1
  13. INFO[2024-01-17T16:37:43.183499360+08:00] skip loading plugin "io.containerd.snapshotter.v1.btrfs"...  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs (xfs) must be a btrfs filesystem to be used with the btrfs snapshotter: skip plugin" type=io.containerd.snapshotter.v1
  14. INFO[2024-01-17T16:37:43.183991662+08:00] loading plugin "io.containerd.snapshotter.v1.devmapper"...  type=io.containerd.snapshotter.v1
  15. WARN[2024-01-17T16:37:43.184090582+08:00] failed to load plugin io.containerd.snapshotter.v1.devmapper  error="devmapper not configured"
  16. INFO[2024-01-17T16:37:43.184142322+08:00] loading plugin "io.containerd.snapshotter.v1.native"...  type=io.containerd.snapshotter.v1
  17. INFO[2024-01-17T16:37:43.184627063+08:00] loading plugin "io.containerd.snapshotter.v1.overlayfs"...  type=io.containerd.snapshotter.v1
  18. INFO[2024-01-17T16:37:43.184991004+08:00] loading plugin "io.containerd.snapshotter.v1.zfs"...  type=io.containerd.snapshotter.v1
  19. INFO[2024-01-17T16:37:43.185386025+08:00] skip loading plugin "io.containerd.snapshotter.v1.zfs"...  error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.zfs must be a zfs filesystem to be used with the zfs snapshotter: skip plugin" type=io.containerd.snapshotter.v1
  20. INFO[2024-01-17T16:37:43.185426025+08:00] loading plugin "io.containerd.metadata.v1.bolt"...  type=io.containerd.metadata.v1
  21. WARN[2024-01-17T16:37:43.185509726+08:00] could not use snapshotter devmapper in metadata plugin  error="devmapper not configured"
  22. INFO[2024-01-17T16:37:43.185534686+08:00] metadata content store policy set             policy=shared
  23. INFO[2024-01-17T16:37:43.192321664+08:00] loading plugin "io.containerd.differ.v1.walking"...  type=io.containerd.differ.v1
  24. INFO[2024-01-17T16:37:43.192369284+08:00] loading plugin "io.containerd.gc.v1.scheduler"...  type=io.containerd.gc.v1
  25. INFO[2024-01-17T16:37:43.192454304+08:00] loading plugin "io.containerd.service.v1.introspection-service"...  type=io.containerd.service.v1
  26. INFO[2024-01-17T16:37:43.192522964+08:00] loading plugin "io.containerd.service.v1.containers-service"...  type=io.containerd.service.v1
  27. INFO[2024-01-17T16:37:43.192558844+08:00] loading plugin "io.containerd.service.v1.content-service"...  type=io.containerd.service.v1
  28. INFO[2024-01-17T16:37:43.192588405+08:00] loading plugin "io.containerd.service.v1.diff-service"...  type=io.containerd.service.v1
  29. INFO[2024-01-17T16:37:43.192619525+08:00] loading plugin "io.containerd.service.v1.images-service"...  type=io.containerd.service.v1
  30. INFO[2024-01-17T16:37:43.192649145+08:00] loading plugin "io.containerd.service.v1.leases-service"...  type=io.containerd.service.v1
  31. INFO[2024-01-17T16:37:43.192680805+08:00] loading plugin "io.containerd.service.v1.namespaces-service"...  type=io.containerd.service.v1
  32. INFO[2024-01-17T16:37:43.192713545+08:00] loading plugin "io.containerd.service.v1.snapshots-service"...  type=io.containerd.service.v1
  33. INFO[2024-01-17T16:37:43.192742805+08:00] loading plugin "io.containerd.runtime.v1.linux"...  type=io.containerd.runtime.v1
  34. INFO[2024-01-17T16:37:43.192931185+08:00] loading plugin "io.containerd.runtime.v2.task"...  type=io.containerd.runtime.v2
  35. INFO[2024-01-17T16:37:43.193127946+08:00] loading plugin "io.containerd.monitor.v1.cgroups"...  type=io.containerd.monitor.v1
  36. INFO[2024-01-17T16:37:43.193782948+08:00] loading plugin "io.containerd.service.v1.tasks-service"...  type=io.containerd.service.v1
  37. INFO[2024-01-17T16:37:43.193849968+08:00] loading plugin "io.containerd.internal.v1.restart"...  type=io.containerd.internal.v1
  38. INFO[2024-01-17T16:37:43.193969348+08:00] loading plugin "io.containerd.grpc.v1.containers"...  type=io.containerd.grpc.v1
  39. INFO[2024-01-17T16:37:43.194002468+08:00] loading plugin "io.containerd.grpc.v1.content"...  type=io.containerd.grpc.v1
  40. INFO[2024-01-17T16:37:43.194032788+08:00] loading plugin "io.containerd.grpc.v1.diff"...  type=io.containerd.grpc.v1
  41. INFO[2024-01-17T16:37:43.194063708+08:00] loading plugin "io.containerd.grpc.v1.events"...  type=io.containerd.grpc.v1
  42. INFO[2024-01-17T16:37:43.194096109+08:00] loading plugin "io.containerd.grpc.v1.healthcheck"...  type=io.containerd.grpc.v1
  43. INFO[2024-01-17T16:37:43.194130489+08:00] loading plugin "io.containerd.grpc.v1.images"...  type=io.containerd.grpc.v1
  44. INFO[2024-01-17T16:37:43.194159349+08:00] loading plugin "io.containerd.grpc.v1.leases"...  type=io.containerd.grpc.v1
  45. INFO[2024-01-17T16:37:43.194188669+08:00] loading plugin "io.containerd.grpc.v1.namespaces"...  type=io.containerd.grpc.v1
  46. INFO[2024-01-17T16:37:43.194216589+08:00] loading plugin "io.containerd.internal.v1.opt"...  type=io.containerd.internal.v1
  47. INFO[2024-01-17T16:37:43.194398649+08:00] loading plugin "io.containerd.grpc.v1.snapshots"...  type=io.containerd.grpc.v1
  48. INFO[2024-01-17T16:37:43.194442309+08:00] loading plugin "io.containerd.grpc.v1.tasks"...  type=io.containerd.grpc.v1
  49. INFO[2024-01-17T16:37:43.194473650+08:00] loading plugin "io.containerd.grpc.v1.version"...  type=io.containerd.grpc.v1
  50. INFO[2024-01-17T16:37:43.194501590+08:00] loading plugin "io.containerd.grpc.v1.introspection"...  type=io.containerd.grpc.v1
  51. INFO[2024-01-17T16:37:43.194767270+08:00] serving...                                    address=/var/run/docker/containerd/containerd-debug.sock
  52. INFO[2024-01-17T16:37:43.194847951+08:00] serving...                                    address=/var/run/docker/containerd/containerd.sock.ttrpc
  53. INFO[2024-01-17T16:37:43.194907571+08:00] serving...                                    address=/var/run/docker/containerd/containerd.sock
  54. INFO[2024-01-17T16:37:43.194936211+08:00] containerd successfully booted in 0.063779s  
  55. INFO[2024-01-17T16:37:43.203435713+08:00] parsed scheme: "unix"                         module=grpc
  56. INFO[2024-01-17T16:37:43.203476293+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
  57. INFO[2024-01-17T16:37:43.203514214+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
  58. INFO[2024-01-17T16:37:43.203535454+08:00] ClientConn switching balancer to "pick_first"  module=grpc
  59. INFO[2024-01-17T16:37:43.204550216+08:00] parsed scheme: "unix"                         module=grpc
  60. INFO[2024-01-17T16:37:43.204590876+08:00] scheme "unix" not registered, fallback to default scheme  module=grpc
  61. INFO[2024-01-17T16:37:43.204625736+08:00] ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock  <nil> 0 <nil>}] <nil> <nil>}  module=grpc
  62. INFO[2024-01-17T16:37:43.204647717+08:00] ClientConn switching balancer to "pick_first"  module=grpc
  63. INFO[2024-01-17T16:37:43.261073806+08:00] Loading containers: start.                  
  64. INFO[2024-01-17T16:37:43.841747309+08:00] Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address
  65. INFO[2024-01-17T16:37:43.942240656+08:00] Firewalld: interface docker0 already part of docker zone, returning
  66. INFO[2024-01-17T16:37:44.034537461+08:00] Loading containers: done.                    
  67. INFO[2024-01-17T16:37:44.071730559+08:00] Docker daemon                                 commit=8728dd2 graphdriver(s)=overlay2 version=20.10.6
  68. INFO[2024-01-17T16:37:44.071914980+08:00] Daemon has completed initialization         
  69. INFO[2024-01-17T16:37:44.123180096+08:00] API listen on /var/run/docker.sock           
复制代码
可以看到 docker 可以正常启动,不过当前是在窗口中手动启动的,Ctrl + C,杀掉就好。
  1. ^CINFO[2024-01-17T16:38:04.425317678+08:00] Processing signal 'interrupt'               
  2. INFO[2024-01-17T16:38:04.426455381+08:00] stopping event stream following graceful shutdown  error="<nil>" module=libcontainerd namespace=moby
  3. INFO[2024-01-17T16:38:04.426832962+08:00] Daemon shutdown complete                     
  4. INFO[2024-01-17T16:38:04.426861062+08:00] stopping healthcheck following graceful shutdown  module=libcontainerd
  5. INFO[2024-01-17T16:38:04.426897042+08:00] stopping event stream following graceful shutdown  error="context canceled" module=libcontainerd namespace=plugins.moby
复制代码
7. 设置 Docker 服务

7.1 编辑 docker 的系统服务文件

  1. vi /usr/lib/systemd/system/docker.service
复制代码
7.2 将下面的内容复制到刚创建的docker.service文件中

  1. [Unit]
  2. Description=Docker Application Container Engine
  3. Documentation=https://docs.docker.com
  4. After=network-online.target firewalld.service
  5. Wants=network-online.target
  6. [Service]
  7. Type=notify
  8. ExecStart=/usr/bin/dockerd
  9. ExecReload=/bin/kill -s HUP $MAINPID
  10. LimitNOFILE=infinity
  11. LimitNPROC=infinity
  12. TimeoutStartSec=0
  13. Delegate=yes
  14. KillMode=process
  15. Restart=on-failure
  16. StartLimitBurst=3
  17. StartLimitInterval=60s
  18. [Install]
  19. WantedBy=multi-user.target
复制代码
7.3 为docker.service添加执行权限

  1. chmod +x /usr/lib/systemd/system/docker.service
复制代码
7.4 编辑daemon.json

  1. vi /etc/docker/daemon.json
复制代码
并添加以下内容:
  1. {
  2.   "registry-mirrors": ["https://registry.docker-cn.com"],
  3.   "exec-opts": ["native.cgroupdriver=systemd"]
  4. }
复制代码
生存后,执行:systemctl daemon-reload
7.5 启动 Docker

  1. [root@localhost opt]# systemctl start docker
  2. [root@localhost opt]#
  3. [root@localhost opt]# docker ps
  4. CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
  5. [root@localhost opt]#
  6. [root@localhost opt]# docker -v
  7. Docker version 20.10.6, build 370c289
  8. [root@localhost opt]#
  9. [root@localhost opt]# docker info
  10. Client:
  11. Context:    default
  12. Debug Mode: false
  13. Server:
  14. Containers: 0
  15.   Running: 0
  16.   Paused: 0
  17.   Stopped: 0
  18. Images: 0
  19. Server Version: 20.10.6
  20. Storage Driver: overlay2
  21.   Backing Filesystem: xfs
  22.   Supports d_type: true
  23.   Native Overlay Diff: true
  24.   userxattr: false
  25. Logging Driver: json-file
  26. Cgroup Driver: cgroupfs
  27. Cgroup Version: 1
  28. Plugins:
  29.   Volume: local
  30.   Network: bridge host ipvlan macvlan null overlay
  31.   Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
  32. Swarm: inactive
  33. Runtimes: io.containerd.runtime.v1.linux runc io.containerd.runc.v2
  34. Default Runtime: runc
  35. Init Binary: docker-init
  36. containerd version: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
  37. runc version:
  38. init version: de40ad0
  39. Security Options:
  40.   seccomp
  41.    Profile: default
  42. Kernel Version: 4.19.90-52.22.v2207.ky10.aarch64
  43. Operating System: Kylin Linux Advanced Server V10 (Lance)
  44. OSType: linux
  45. Architecture: aarch64
  46. CPUs: 64
  47. Total Memory: 252.8GiB
  48. Name: localhost.localdomain
  49. ID: JRHZ:QLCB:TIJQ:KEM4:Z56J:TFJN:WAAG:BT4T:S2IC:XVOM:VZNS:TU6U
  50. Docker Root Dir: /var/lib/docker
  51. Debug Mode: false
  52. Registry: https://index.docker.io/v1/
  53. Labels:
  54. Experimental: false
  55. Insecure Registries:
  56.   127.0.0.0/8
  57. Live Restore Enabled: false
  58. Product License: Community Engine
  59. [root@localhost opt]#
复制代码
正常启动。
7.6 添加开机自动启动

  1. systemctl enable docker
复制代码
Docker 安装 参考: https://blog.csdn.net/qq_30665009/article/details/125938033
8. 安装 docker-compose

直接 GitHub 下载:docker/compose 选择自己喜好的版本,这里直接拉满,下载当前最新的版本:v2.24.0

这里根据自己的架构,选择对应的包,下载就好了。
  1. cp docker-compose-linux-aarch64  /usr/local/bin/docker-compose
  2. chmod +x /usr/local/bin/docker-compose
复制代码
检察版本
  1. [root@localhost opt]# docker-compose -v
  2. Docker Compose version v2.24.0
  3. [root@localhost opt]#
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

十念

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表