前提・実現したいこと
既存のRailsアプリの開発環境をvagrantからDockerに変更したいのですが、docker-compose upがうまくいきません。
ご教授ください。
発生している問題・エラーメッセージ
Could not find nokogiri-1.10.10 in any of the sources
該当のソースコード
Dockerfile
1FROM ruby:2.6.3 2 3RUN apt-get update && \ 4 apt-get install -y mariadb-client nodejs vim --no-install-recommends && \ 5 rm -rf /var/lib/apt/lists/* 6 7RUN mkdir /myproject 8 9WORKDIR /myproject 10 11ADD Gemfile /myproject/Gemfile 12ADD Gemfile.lock /myproject/Gemfile.lock 13 14RUN gem install bundler 15RUN bundle install 16 17ADD . /myproject
Conpose
1version: '2' 2services: 3 db: 4 image: mysql:5.6 5 environment: 6 MYSQL_ROOT_PASSWORD: password 7 MYSQL_DATABASE: root 8 volumes: 9 - mysql-data:/var/lib/mysql #データの永続化のために必要 10 ports: 11 - "4306:3306" #両方3306でもok。詳細は下の「番外編:DBをsequel proで可視化したい」へ 12 13 web: 14 tty: true #コンテナ上でbinding.pryするために必要 15 stdin_open: true #コンテナ上でbinding.pryするために必要 16 build: . 17 command: bundle exec rails s -p 3000 -b '0.0.0.0' 18 volumes: 19 - .:/myproject #ローカルのディレクトリをコンテナ上にマウント 20 - bundle:/usr/local/bundle #bundle installした後buildし直さなくてよくなる 21 ports: 22 - "3000:3000" 23 links: 24 - db 25 26volumes: 27 mysql-data: 28 bundle:
datebase
1default: &default 2 adapter: mysql2 3 encoding: utf8 4 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 5 username: root 6 password: password 7 host: db 8 9development: 10 <<: *default 11 database: db/development.sqlite3
試したこと
gem install nokogiri
をすると
ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.
と出ました。次に
sudo gem install nokogiri
上記コマンドを入力し、docker logsで確認すると
Could not find nokogiri-1.10.10 in any of the sources Run `bundle install` to install missing gems. Could not find nokogiri-1.10.10 in any of the sources Run `bundle install` to install missing gems.
となり、bundle installは問題なくできます。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/11 07:13
2020/07/11 10:52 編集