这个问题与 OpenShift 的本地版本 Minishift 有关。我在 MacOS 上运行。
我正在尝试从 docker hub 部署一个名为 Mountebank 的应用程序,源代码如下:
https://hub.docker.com/r/andyrbell/mountebank/
DockerFile 如下所示:
FROM alpine:3.6
EXPOSE 2525
CMD ["mb"]
ENV NODE_VERSION=6.10.3-r1
RUN apk update \
&& apk add --no-cache nodejs=${NODE_VERSION} \
&& apk add --no-cache nodejs-npm=${NODE_VERSION}
ENV MOUNTEBANK_VERSION=1.13.0
RUN npm install -g mountebank@${MOUNTEBANK_VERSION} --production \
&& npm cache clean \
&& rm -rf /tmp/npm*
我可以在 MacOS 上本地的容器内运行 Mountebank 映像。
当我在 Minishift 中安装映像并尝试启动 pod 时,我收到以下错误:
/usr/lib/node_modules/mountebank/node_modules/q/q.js:155
throw e;
^
Error: EACCES: permission denied, open 'mb.pid'
at Error (native)
at Object.fs.openSync (fs.js:641:18)
at Object.fs.writeFileSync (fs.js:1347:33)
at /usr/lib/node_modules/mountebank/bin/mb:176:16
at _fulfilled (/usr/lib/node_modules/mountebank/node_modules/q/q.js:854:54)
at self.promiseDispatch.done (/usr/lib/node_modules/mountebank/node_modules/q/q.js:883:30)
at Promise.promise.promiseDispatch (/usr/lib/node_modules/mountebank/node_modules/q/q.js:816:13)
at /usr/lib/node_modules/mountebank/node_modules/q/q.js:624:44
at runSingle (/usr/lib/node_modules/mountebank/node_modules/q/q.js:137:13)
at flush (/usr/lib/node_modules/mountebank/node_modules/q/q.js:125:13)
我假设这与我的 pod 在 Minishift 中运行的权限问题有关,但我不知道如何更改它们。
任何帮助表示赞赏,
非常感谢