docker 部署遇到目录的权限问题

本贴最后更新于 434 天前,其中的信息可能已经斗转星移

如题,我现在使用下面的命令没有办法创建 siyuan 的 docker,启动后会直接 exit

docker run -it -d \ b3log/siyuan:latest \ --name siyuan \ -v /root/docker/siyuan:/siyuan \ -p 30000:6806 \ --restart=always \ -workspace=/siyuan

请问是哪里写的不对吗?--workspace=/siyuan 也试过,也不行。


献丑了,如果要指定 docker 中运行的命令,应该要把 docker 镜像的名字放在后头。下面的命令可以完美启动思源,但还是有问题

docker run -d \ --name siyuan \ -v /root/docker/siyuan:/root/docker/siyuan \ -p 30000:6806 \ --restart=always \ b3log/siyuan:latest \ --workspace=/root/docker/siyuan \ --lang=zh_CN \ --accessAuthCode=123456

可是用上面的 docker 命令创建的思源容器,会出现如下找不到路径的错误,docker 内部没办法找到我标出来的这个路径。会自己改动成一个新的工作路径。

W 2023/11/16 10:11:39 file.go:262: determines whether [/root/docker/siyuan] is a directory failed: [lstat /root/docker/siyuan: permission denied] W 2023/11/16 10:11:39 working.go:225: use the default workspace [/home/siyuan/SiYuan] since the specified workspace [/root/docker/siyuan] is not a dir

我尝试弄一个特殊的路径出来,比如 /var/siyuan但还是会显示没有权限,我应该怎么解决这个问题?

docker run -d \ --privileged \ --name siyuan \ -v /var/siyuan:/var/siyuan \ -p 30000:6806 \ --restart=always \ b3log/siyuan:latest \ --workspace=/var/siyuan \ --lang=zh_CN \ --accessAuthCode=123456
E 2023/11/16 11:29:23 working.go:247: create os tmp dir [/var/siyuan/temp/os] failed: mkdir /var/siyuan/temp: permission denied E 2023/11/16 11:29:24 working.go:247: create os tmp dir [/var/siyuan/temp/os] failed: mkdir /var/siyuan/temp: permission denied E 2023/11/16 11:29:25 working.go:247: create os tmp dir [/var/siyuan/temp/os] failed: mkdir /var/siyuan/temp: permission denied
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23702 引用 • 96197 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    8813 引用 • 40165 回帖 • 133 关注
被采纳的回答
  • ebird98 via Linux
    1. 现在 docker 镜像里的 siyuan,用的应该是 siyuan 账号而非 root。

    2. -v 那一大堆最后加:z

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • ebird98 via Linux

    还有--lang=zh_CN,--accessAuthCode=xxx

    1 回复
  • muxue

    确实,不然默认打开是英文的界面。感谢告知

  • ebird98 via Linux
    1. 现在 docker 镜像里的 siyuan,用的应该是 siyuan 账号而非 root。

    2. -v 那一大堆最后加:z

    1 回复
  • muxue

    那请问,我要怎么给他指定目录?在-v 命令最后加上 :z 没有用,还是没权限。下面这两个命令创建出来的 docker 里面都会显示没权限。尝试 --privileged=true 指定特权模式也不行。抱歉,docker 这方面我是小白。😭

    docker run -d \ > --name siyuan \ > --restart=always \ > -v /root/docker/siyuan/sy:/home/siyuan/siyuan:z \ > -p 30000:6806 \ > b3log/siyuan:latest \ > --workspace=/home/siyuan/siyuan \ > --lang=zh_CN \ > --accessAuthCode=12345
    docker run -d \ --privileged=true \ --name siyuan \ -v /var/siyuan:/var/siyuan:z \ -p 30000:6806 \ --restart=always \ b3log/siyuan:latest \ --workspace=/var/siyuan \ --lang=zh_CN \ --accessAuthCode=123456
  • muxue

    试了试,好像只要别在需要 root 权限才能访问的路径下搞这个就行了

    进入子用户,新建个文件夹,然后 sudo 执行如下命令创建思源的 docker 就 ok 了。把 root 用户下的目录设置为 1000 的用户组和所属用户应该也能解决这个问题。

    sudo docker run -d \ --name siyuan \ -v /home/muxue/siyuan/sy:/home/siyuan/sy \ -p 30000:6806 \ --restart=always \ b3log/siyuan:latest \ --workspace=/home/siyuan/sy \ --lang=zh_CN \ --accessAuthCode=123456

    这个命令可以正常部署思源,也没有遇到本页面提到的权限问题或者说是找不到路径的问题。

    感谢大家的帮助!

    1 回复
    1 操作
    muxue 在 2024-02-19 10:04:36 更新了该回帖
  • ebird98 via Linux

    要是有 podman 可以用 podman,就不用 root 和 sudo 了。

    1 回复
  • muxue

    嗯嗯

请输入回帖内容 ...

推荐标签 标签

  • 服务器

    服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。

    127 引用 • 589 回帖
  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    209 引用 • 72 回帖
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 636 关注
  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 25 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    948 引用 • 943 回帖
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 376 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖 • 1 关注
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 618 关注
  • IBM

    IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。

    17 引用 • 53 回帖 • 142 关注
  • 印象笔记
    3 引用 • 16 回帖
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖
  • 七牛云

    七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。

    28 引用 • 225 回帖 • 145 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖
  • Swagger

    Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

    26 引用 • 35 回帖 • 3 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 157 关注
  • 爬虫

    网络爬虫(Spider、Crawler),是一种按照一定的规则,自动地抓取万维网信息的程序。

    106 引用 • 275 回帖
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 58 关注
  • IPFS

    IPFS(InterPlanetary File System,星际文件系统)是永久的、去中心化保存和共享文件的方法,这是一种内容可寻址、版本化、点对点超媒体的分布式协议。请浏览 IPFS 入门笔记了解更多细节。

    21 引用 • 245 回帖 • 243 关注
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    5 引用 • 34 回帖
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 596 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 166 关注
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23702 引用 • 96197 回帖
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 309 关注
  • OnlyOffice
    4 引用 • 7 关注
  • 工具

    子曰:“工欲善其事,必先利其器。”

    290 引用 • 735 回帖
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖 • 1 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 660 关注