My Docker Jekyll line 创建一个新的脚手架
sudo docker run --rm -it --volume="$PWD:/srv/jekyll" jekyll/jekyll:4.0 jekyll new blog
我的许可被拒绝
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux-musl]
jekyll 4.0.0 | Error: Permission denied @ dir_s_mkdir - /srv/jekyll/blog
我的残疾人
vagrant@gitlab:/$ pwd
/
为什么?
错误就在那里:Jekyll 无法创建目录,因为它没有权限。
原因是 jekyll 用户使用UID 1000
https://github.com/envygeeks/jekyll-docker/blob/master/repos/jekyll/Dockerfile#L133,并且此 UID 对主机中的/
没有写入权限。
使用sudo
没关系,sudo
只是为了能够运行docker服务,但容器本身使用UID 1000。
因此,要解决此问题,只需使用具有 UID 1000 的用户具有写入访问权限的其他主机挂载点。