PaddlePaddle飞桨Linux系统Docker版安装

PaddlePaddle飞桨Linux系统Docker版安装

最近学习和了解PP飞桨,一切从安装开始。官网的安装教程很详细:

https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/docker/linux-docker.html

记录我在安装过程中遇到的问题和解决方案。

版本选择

我选择的安装版本是:

飞桨 2.6 ,linux,docker,cpu 版本

因为是学习和测试,我选择包含juypter的镜像(追求新版本的可以选3.0)

powershell 复制代码
#CPU版的PaddlePaddle,且镜像中预装好了 jupyter:
docker pull ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddle:2.6.2-jupyter

Docker 安装

linux 查看系统版本

powershell 复制代码
lsb_release -a

Docker 安装教程

https://docs.docker.com/engine/

我选择安装 Docker Engine,根据系统版本进入相应的安装教程:

https://docs.docker.com/engine/install/ubuntu/

对系统版本的要求很高,我是不是遇到Docker的大版本更新了?

安装方式有好几种:

  • 我先选择 apt 方式,需要的下载时间太长了,放弃了。
  • 通过下载安装包,再进行安装

教程步骤写得很清晰,遇到的问题是下载路径确定:

  1. 基础路径:https://download.docker.com/linux/ubuntu/dists/

  2. ubuntu 内核版本:lsb_release -a

    https://download.docker.com/linux/ubuntu/dists/jammy/

    https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/

  3. 系统架构

    uname -a 可以查看系统架构

    我的是 x86_64

    常见的对应关系,来自网上查找,

    架构 输出结果

    i386 i386, i686

    amd64 x86_64

    arm arm, armv7l

    arm64 aarch64, armv8l

    mips mips

    mips64 mips64

    等等等 alpha, arc, blackfin, c6x, cris, frv, h8300, hexagon, ia64, m32r, m68k, metag, microblaze, mn10300, nios2, openrisc, parisc, parisc64, ppc, ppcle, ppc64, ppc64le, s390, s390x, score, sh, sh64, sparc, sparc64, tile, unicore32, xtensa

所以我这台机器最后的下载路径是:

https://download.docker.com/linux/ubuntu/dists/jammy/pool/stable/amd64/

构建docker 容器

  • 官方详细教程用的是3.0.0b1的镜像,请根据自己的需要选择镜像。
  • -v PWD:/paddle:指定将当前路径(PWD 变量会展开为当前路径的绝对路径)挂载到容器内部的 /paddle 目录; 我安装的是带jupyter的版本,容器中jupyter默认打开路径是 /home/paddle,所以应该写为: -v PWD:/home/paddle (教程页面中也有正确的版本)
  • 远程访问juypterhub 提示服务器未启动。然后启动时提示失败:
    报错:Spawn failed: Server at http://127.0.0.1:38775/user/paddle/ didn't respond
    最后发现我没按照教程步骤执行:

    创建系统和容器中映射的路径 jupyter_docker 后,我没有执行chmod操作。执行chmod操作后,juypterhub就启动成功了。(没有进入容器分析日志文件,完全靠重复步骤找到答案,不一定准确,仅作参考。
相关推荐
ephemerals__27 分钟前
【Linux】基础文件IO
linux·运维·数据库
Seven9735 分钟前
Linux常用命令介绍-系统管理
linux
愚润求学1 小时前
【Linux】线程控制
linux·运维·开发语言·c++·笔记
LeonXrek1 小时前
嵌入式Linux 期末复习指南(上)
linux
yule2 小时前
waitpid的waitstatus 含义源码解读
linux·服务器
腾云@2 小时前
virtio介绍 (三)--spdk作为virtio后端处理nvme盘io的流程--上
linux·运维·后端·云计算
孞㐑¥5 小时前
Linux之进程间通信
linux·c++·经验分享·笔记
yan123689 小时前
Linux 驱动之设备树
android·linux·驱动开发·linux驱动
吐泡泡_9 小时前
进程间通信(消息队列)
linux
待什么青丝11 小时前
【Ubuntu】摸鱼技巧之虚拟机环境复制
linux·运维·ubuntu