Docker部署思源笔记
第一步
先拉取思源笔记的镜像
shdocker pull b3log/siyuan
将镜像拉取到本地后,可以查看本地镜像列表
shdocker images
会出现的问题:
拉取镜像时报错
- sh
Error response from daemon
网络问题,Docker默认镜像源DockerHub为外国网站
速度较慢已禁止访问添加国内镜像源
下面代码中为南京大学docker-hub镜像
2024-06-10: 南京大学docker-hub镜像站停止服务shvim /etc/docker/daemon.json # 添加内容 { "registry-mirrors": ["https://docker.nju.edu.cn/"] }
添加完国内镜像源之后需要重启Docker服务。
sh# 重新载入systemd,扫描新的或有变动的单元 systemctl daemon-reload # 重启Docker服务 systemctl restart docker
第二步
此时已经拉取了思源笔记的镜像
根据拉取的思源笔记镜像运行容器:
sh
docker run -d --name siyuanNote -v /siyuan/workspace:/siyuan/workspace -p 6806:6806 -u 1000:1000 b3log/siyuan --workspace=/siyuan/workspace --accessAuthCode=xxx
参数解释:
-d
后台运行,不会因为shell的停止而停止运行--name
容器名字-v
挂载目录,将宿主机的目录挂载至docker容器内-p
端口映射-u
给用户组的权限--workspace
容器的工作目录--accessAuthCode
访问权限码
关于用户权限的问题
镜像中是使用默认创建的普通用户siyuan
(uid 1000 / gid 1000) 来启动内核的,所以在宿主机创建工作空间文件夹的时候请注意宿主机的工作目录所属用户组:chown -R 1000:1000 /siyuan/workspace
在启动时应带参数-u 1000:1000