Node.js 运行节点在Docker槽纱中的应用

Node.js 运行节点在Docker槽纱中的应用,node.js,docker,yarnpkg,puppeteer,Node.js,Docker,Yarnpkg,Puppeteer,我正在尝试创建一个docker图像,其目的是通过使用Thread和micro将网页的抓取作为一种用户工具进行曝光 我的Docker文件如下: FROM cheeaun/puppeteer:latest RUN useradd -ms /bin/bash appuser COPY . /app RUN mkdir -p /app/logs RUN mkdir -p /app/buffer RUN apt-get update RUN apt-get install make -y RUN apt-

我正在尝试创建一个docker图像,其目的是通过使用Thread和micro将网页的抓取作为一种用户工具进行曝光

我的Docker文件如下:

FROM cheeaun/puppeteer:latest
RUN useradd -ms /bin/bash appuser
COPY . /app
RUN mkdir -p /app/logs
RUN mkdir -p /app/buffer
RUN apt-get update
RUN apt-get install make -y
RUN apt-get install g++ -y
RUN cd /app && yarn --production --pure-lockfile
EXPOSE 3000   
USER appuser
WORKDIR /app
CMD ["su", "-", "user", "yarn", "start"]
按照预期创建图像:

docker build . -t <application-name>:<tag>
我做错了什么?蒂亚


另外,作为副本指出的问题并不能解决我的问题,因为它涉及到对映像的ssh复制,我的问题是在启动时。

Dockerfile
USER
指令告诉映像它应该作为什么用户启动。您不需要在
CMD
中手动调用
su
;把它拿走

USER appuser
CMD ["yarn", "start"]

谢谢这解决了问题,我现在有另一个(铬不会在容器内启动),但调用按预期进行!
USER appuser
CMD ["yarn", "start"]