rails でDoker導入をしようとすると
docker-compose run web bundle exec rake db:create
↑のコマンドを実行すると、、
======================================== Your Yarn packages are out of date! Please run `yarn install --check-files` to update. ======================================== To disable this check, please change `check_yarn_integrity` to `false` in your webpacker config file (config/webpacker.yml).
とエラーメッセージが出ます。
試したこと
こちらを参考にcheck_yarn_integrity
をfalseにしたりいろいろ試したのですが、エラーが変わらず、、PCを再起動してみてもダメでした。
##該当コード
Dockerfile
1FROM ruby:2.6.5 2 3RUN apt-get update -qq && \ 4 apt-get install -y build-essential \ 5 libpq-dev \ 6 nodejs 7 8RUN mkdir /app_name 9 10ENV APP_ROOT /app_name 11WORKDIR $APP_ROOT 12 13ADD ./Gemfile $APP_ROOT/Gemfile 14ADD ./Gemfile.lock $APP_ROOT/Gemfile.lock 15 16RUN gem install bundler 17RUN bundle install 18ADD . $APP_ROOT
Docker
1version: '3' 2services: 3 db: # database.ymlと対応したものを読み込みます 4 image: mysql:5.6 5 environment: 6 MYSQL_DATABASE: docker_development 7 MYSQL_ROOT_PASSWORD: password 8 MYSQL_USER: root 9 MYSQL_PASSWORD: password 10 volumes: 11 - ./mysql/mysql_data:/var/lib/mysql # データの永続化 12 ports: 13 - "4306:3306" # ホストからゲストへポートフォワード。sequelProと繋ぎたいので、3306ではなく4306をポートに指定 14 web: 15 build: 16 context: . 17 dockerfile: Dockerfile 18 # 一度サーバーが起動すると起動し続けるので、rm -f /workdir/tmp/pids/server.pidで、dockerが起動する度に一旦停止させる 19 command: /bin/sh -c "rm -f /workdir/tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" 20 tty: true 21 stdin_open: true 22 depends_on: 23 - db # DB側のコンテナが出来上がってからwebを実行する 24 ports: 25 - "3000:3000" # ホストからゲストへポートフォワード 26 volumes: 27 - .:/workdir # ソースコード変更したらDocker側も即反映されるように
//database.yml development: <<: *default database: book-app_development
ご確認のほどよろしくお願いいたします。
あなたの回答
tips
プレビュー