0
노드 응용 프로그램이 실행되지 않는 이유를 알지 못합니다. 기본적으로 나는 nodejs 앱에서 dockerfile을 추가하고, 여기 start.bash
은 다음과 같습니다 어디에 Dockerfile다른 사용자가있는 컨테이너를 실행할 때 Docker가 빌드에서 실행될 수 없음
FROM node:0.10-onbuild
RUN mv /usr/src/app /ghost && useradd ghost --home /ghost && \
cd /ghost
ENV NODE_ENV production
VOLUME ["/ghost/content"]
WORKDIR /ghost
EXPOSE 2368
CMD ["bash", "start.bash"]
입니다 그래서 같은
#!/bin/bash
GHOST="/ghost"
chown -R ghost:ghost /ghost
su ghost << EOF
cd "$GHOST"
NODE_ENV={$NODE_ENV:-production} npm start
EOF
나는 보통 실행 고정 표시기 :
docker run --name ghost -d -p 80:2368 user/ghost
으로 무슨 일이 일어나고 있는지 알 수 없으며 다음과 같이 실행하기로했습니다.
(210)그리고이 출력을 가지고 :
> [email protected] start /ghost
> node index
를 시작처럼 보인다,하지만 난 용기 docker ps -a
의 상태를 확인, 그것은이 정지됩니다.
명령에'bash'를 추가 한 다음'bash start.bash'를 수동으로 실행할 수 있습니까? 당신이하는 일은 약간 이상한 일입니다. (왜 작동하지 않는지는 모르겠지만) 실행중인 프로세스의 출력을 얻으려면'docker logs ghost'를 사용하십시오. – jgillich
하하, 정말로? 왜 당신은 이상한 것을 발견합니까, 나는 당신이 제안한 것을 할 것입니다 –
'docker logs ghost'는 나의'-it' 시도와 같은 출력을주었습니다 ... –