Webpacker::Manifest::MissingEntryError

6121 단어 webpackerDockerRails

이미지 오류를 해결하는 데 너무 많은 시간이 걸렸기 때문에 메모 노트입니다.



먼저 결론을 내리다


제 경우docker-compose run --rm web yarn install에 해결됐어요.

환경


[환경]
・Ruby2.6.6
・Rails6.0.3.2
・Docker

웹 패커에 대한 참고 보도


Dockerfile


qiita.rb
FROM ruby:2.6

# install package to docker container
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev \
    && apt-get install apt-transport-https \
    && curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
    && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
    && apt-get update && apt-get install -y yarn \
    && curl -sL https://deb.nodesource.com/setup_10.x | bash - \
    && apt-get install -y nodejs \
    && mkdir /アプリ名

WORKDIR /FANTRA
COPY Gemfile /アプリ名/Gemfile
COPY Gemfile.lock /アプリ名/Gemfile.lock

COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]
EXPOSE 3000

확인

  • 웹 패커가 설치되어 있습니까?
  • rails webpacker:install 실행
    (실행 시 발생conflict config/webpacker.yml
  • yarn이 설치되었습니까?
  • 1.22.4
  • nodejs가 설치되었습니까?
  • v10.21.0
  • 필요한 건 다 모였을 텐데 왠지 못하겠어...

    알 수 없는 일


    도대체 웹팩이 뭐예요?
    Webpack은 CSS, JavaScript, 이미지 등을 하나의 파일 모듈 번들, node로 묶는 데 사용됩니다.js의 모듈 중 하나입니다.
    yarn이나 npm은 루비가 말한 bundler로 라이브러리의 nodejs를 관리하는 도구입니다.bundle install를 실행하지 않으면 패키지입니다.json이 지정한 nodejs 라이브러리는 다운로드하여 실행할 수 없는 것 같습니다.
    웹팩은 nodejs의 라이브러리에서 왔습니다. 이 오류를 없애기 위해서는 yarn install와 같은 처리로 실행해야 합니다yarn install.

    yarn install 해보세요.


    qiita.rb
     $  docker-compose run --rm web yarn install 
    
    나는 순조롭게 잘못을 해결했다.

    메모


    Dockerfile의 RUN이 하는 것과 yml의 내용 등 실행해야 하는 명령이 다릅니까?

    좋은 웹페이지 즐겨찾기