---
title: Docker迁移至Docker指导
description: "1. 获取Docker集合包(https://mirrors.huaweicloud.com/kunpeng/archive/Kunpeng_Middleware/docker.tar.gz)，包含系统级依赖包和Docker安装包。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevps/portingadvisor/systemmigration/DevKit_Porting_0129.html
sourcePath: /source/zh/kunpengdevps/portingadvisor/systemmigration/DevKit_Porting_0129.html
indexId: 2c0b1e374e239a6c9e57177fc7f6ffdb2c8a74e6147a4da6d072a786d0f447c379
---
# Docker迁移至Docker指导

1. 获取Docker集合包(https://mirrors.huaweicloud.com/kunpeng/archive/Kunpeng_Middleware/docker.tar.gz)，包含系统级依赖包和Docker安装包。
2. 解压Docker集合包并进入解压后目录。
  1 2 tar -xzf docker.tar.gz cd docker

3. 根据操作系统安装系统级依赖。

  - 麒麟操作系统
    1 tar -xzf Kylin-Server-V10-SP3-2403-Release-20240426-arm64.tar.gz;rpm -ivh ./Kylin-Server-V10-SP3-2403-Release-20240426-arm64/container-selinux-2.138.0-1.p01.ky10.noarch.rpm;rpm -ivh ./Kylin-Server-V10-SP3-2403-Release-20240426-arm64/libcgroup-0.42.2-4.ky10.aarch64.rpm

  - UOS V20 1060e
    1 tar -xzf uos-server-20-1060e-20240820-arm64.tar.gz;rpm -ivh ./uos-server-20-1060e-20240820-arm64/container-selinux-2.138.0-1.uel20.noarch.rpm;rpm -ivh ./uos-server-20-1060e-20240820-arm64/libcgroup-0.42.2-3.uel20.aarch64.rpm

4. 安装Docker。
  1 2 tar -xzf Docker-26.1.3-rpm.tar.gz; rpm -ivh ./Docker-26.1.3-rpm/*.rpm

5. 验证Docker是否安装成功。
  1 docker --version

  若返回Docker相关信息，则表示安装成功。

6. 迁移Docker配置文件。

  a. 在源服务器上，检查相关配置文件是否存在。
    1 2 3 find "${HOME}"/.docker/ -name "config.json"; find /etc/docker/ -name "daemon.json"; find /etc/systemd/system/docker.service.d/ -name "http-proxy.conf"

  b. 请根据上一步实际查询结果，收集相关配置文件。

    1. 创建临时配置文件保存目录。
      1 mkdir -p "${HOME}"/DockerConf

    2. 如果相关文件存在，则根据实际情况执行以下命令。
      1 2 3 tar -Pczvf "${HOME}"/DockerConf/config.json.tar.gz "${HOME}"/.docker/config.json; tar -Pczvf "${HOME}"/DockerConf/daemon.json.tar.gz /etc/docker/daemon.json; tar -Pczvf "${HOME}"/DockerConf/http-proxy.conf.tar.gz /etc/systemd/system/docker.service.d/http-proxy.conf

    3. 压缩Docker相关配置文件。
      1 cd "${HOME}" && tar -czvf DockerConf.tar.gz DockerConf && rm -rf ./DockerConf

  c. 在目标服务器上，创建相关配置文件目录。
    1 mkdir -p "${HOME}"/.docker/ /etc/docker/

  d. 根据实际收集结果，解压相关配置文件。
    1 2 3 tar -tzf "${HOME}"/DockerConf.tar.gz | grep -q 'config.json.tar.gz' && tar -xzf "${HOME}"/DockerConf.tar.gz DockerConf/config.json.tar.gz --to-command='tar -Pxzvf - --no-same-owner'; tar -tzf "${HOME}"/DockerConf.tar.gz | grep -q 'daemon.json.tar.gz' && tar -xzf "${HOME}"/DockerConf.tar.gz DockerConf/daemon.json.tar.gz --to-command='tar -Pxzvf - --no-same-owner'; tar -tzf "${HOME}"/DockerConf.tar.gz | grep -q 'http-proxy.conf.tar.gz' && tar -xzf "${HOME}"/DockerConf.tar.gz DockerConf/http-proxy.conf.tar.gz --to-command='tar -Pxzvf - --no-same-owner'

  e. 回收资源。
    1 rm -rf "${HOME}"/DockerConf.tar.gz

7. 重启Docker服务。
  1 sudo systemctl restart docker.service
