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就启动成功了。(没有进入容器分析日志文件,完全靠重复步骤找到答案,不一定准确,仅作参考。)
相关推荐
木卫二号Coding39 分钟前
推荐Linux统计文件大小并操作删除工具-ncdu
linux·运维·服务器
zhangrelay2 小时前
机械臂末端规划智能模型的误区演示
linux·笔记·学习·ubuntu·ros2
Ivanqhz4 小时前
正余弦位置编码(Sinusoidal Positional Encoding)
java·linux·数据库
H.莓飛4 小时前
【数据结构】队列
linux·数据结构·centos
小此方5 小时前
Linux网络(十九):TCP流量控制与滑动窗口详解,超时重传和快重传到底有什么区别
linux·运维·服务器·网络·网络协议·tcp/ip
码上有光5 小时前
Linux进程通信——共享内存、消息队列和信号量
android·linux·运维·共享内存·通信
沫璃染墨5 小时前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
Java后端的Ai之路5 小时前
Python进阶探索24_应用案例_linux系统的监控
linux·开发语言·python·应用·探索
H.莓飛6 小时前
【数据结构】队列_OJ题
linux·数据结构·centos
H.莓飛6 小时前
【数据结构】栈_OJ题
linux·数据结构·算法·centos