質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

2275閲覧

Docker起動時のエラー

tenten11055

総合スコア67

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/01/15 16:26

編集2020/01/16 00:57

#解決したいこと
docker-compose upの時にエラーが出ており、webコンテナが起動できません。

##環境
PC: Mac OS Catalina 10.15.2
Docker: 19.03.5
Ruby: 2.6.5
Rails: 6.0.1

##docker-compose.yml

version: '3.4' services: db: container_name: 'hoge_db' image: mysql:5.7.10 environment: MYSQL_ROOT_PASSWORD: password TZ: "Asia/Tokyo" ports: - "33006:3306" volumes: - ./containers/mysql_data/var/lib/mysql command: --innodb-use-native-aio=0 nginx: container_name: 'hoge_nginx' build: ./nginx command: > /bin/bash -c "envsubst '$$NGINX_SERVER_NAME $$NGINX_SERVER_PORT' < /etc/nginx/nginx.conf.template > /etc/nginx/nginx.conf && nginx -g 'daemon off;'" environment: - TZ=Asia/Tokyo - NGINX_SERVER_NAME=dev.hoge.jp - NGINX_SERVER_PORT=80 ports: - 80:80 - 443:443 volumes: - tmp:/web/app/tmp - public:/web/app/public depends_on: - web web: container_name: 'hoge_web' build: context: . args: ASSETS_PRECOMPILE: 'false' environment: RAILS_ENV: development DB_USER: root DB_PASSWORD: password DB_HOST: db DB_DATABASE: hoge_development USER_OTP_SECRET: 7148baed8c4681f27dd6dba7b90acf976427d21f5b8ca06d2cac206cf1eb14e85eb17c4957bcc72061d948f0a181d2aa5b472c6ad59c525d2238012e2b6d63bb command: sh -c "rm -f /web/app/tmp/pids/server.pid && bundle exec rails s" tty: true stdin_open: true volumes: - ./web:/web/app - bundle:/usr/local/bundle - tmp:/web/app/tmp - public:/web/app/public links: - db smtp: image: schickling/mailcatcher ports: - "1080:1080" - "1025:1025" volumes: mysql_data: bundle: tmp: public:

##gemfile

source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } ruby '2.6.5' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '~> 6.0.1' # Use mysql as the database for Active Record gem 'mysql2', '>= 0.4.4' # Use Puma as the app server gem 'puma', '~> 4.1' # Use SCSS for stylesheets gem 'sass-rails', '>= 6' # Transpile app-like JavaScript. Read more: https://github.com/rails/webpacker gem 'webpacker', '~> 4.0' # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks gem 'turbolinks', '~> 5' # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder gem 'jbuilder', '~> 2.7' # Use Redis adapter to run Action Cable in production # gem 'redis', '~> 4.0' # Use Active Model has_secure_password # gem 'bcrypt', '~> 3.1.7' # Use Active Storage variant # gem 'image_processing', '~> 1.2' # jQuery gem "jquery-rails" # 多言語化 gem 'rails-i18n', '~> 6' # enum i18n gem "enum_help" # 定数管理 gem "config" # HTTPクライアントライブラリ gem 'faraday' # 論理削除 gem 'acts_as_paranoid', '~> 0.6.0' gem 'http-cookie' # ページネーション gem 'kaminari' # ログイン gem 'devise' gem 'devise_token_auth' gem 'devise-security' gem 'devise-two-factor' # AWS gem 'aws-sdk' # Reduces boot times through caching; required in config/boot.rb gem 'bootsnap', '>= 1.4.2', require: false group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console gem 'byebug', platforms: [:mri, :mingw, :x64_mingw] end group :development do # Access an interactive console on exception pages or by calling 'console' anywhere in the code. gem 'web-console', '>= 3.3.0' gem 'listen', '>= 3.0.5', '< 3.2' # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring gem 'spring' gem 'spring-watcher-listen', '~> 2.0.0' end group :test do # Adds support for Capybara system testing and selenium driver gem 'capybara', '>= 2.15' gem 'selenium-webdriver' # Easy installation and use of web drivers to run system tests with browsers gem 'webdrivers' end # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

#ログ
手順として、以下のことを行いました。
docker-compose run --rm web bundle install
docker-compose run --rm web yarn install
docker-compose run --rm web rake db:migrate <- ここでエラー

Starting hoge_db ... done rake aborted! LoadError: Error loading shared library liblzma.so.5: No such file or directory (needed by /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so) - /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so /usr/local/bundle/gems/bootsnap- 中略 /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:65:in `require' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler.rb:114:in `require' /web/app/config/application.rb:7:in `<top (required)>' /web/app/rakefile:4:in `require_relative' /web/app/rakefile:4:in `<top (required)>' /usr/local/bundle/gems/rake-13.0.1/exe/rake:27:in `<top (required)>' Caused by: LoadError: cannot load such file -- nokogiri/2.6/nokogiri /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require' /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi' /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:89:in `register' /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi' /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:40:in `rescue in require' /usr/local/bundle/gems/bootsnap- 中略 /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:81:in `block (2 levels) in require' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:76:in `each' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:76:in `block in require' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:65:in `each' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler/runtime.rb:65:in `require' /usr/local/bundle/gems/bundler-2.0.2/lib/bundler.rb:114:in `require' /web/app/config/application.rb:7:in `<top (required)>' /web/app/rakefile:4:in `require_relative' /web/app/rakefile:4:in `<top (required)>' /usr/local/bundle/gems/rake-13.0.1/exe/rake:27:in `<top (required)>' Caused by: Bootsnap::LoadPathCache::FallbackScan: (See full trace by running task with --trace)

そしてdocker-compose upをした時がこちらです。

Admin-no-MacBook-Pro:hoge shibuya.kyohei$ docker-compose up Creating network "hoge_default" with the default driver Creating hoge_smtp_1 ... done Creating hoge_db ... done Creating hoge_web ... done Creating hoge_nginx ... done Attaching to hoge_db, hoge_smtp_1, hoge_web, hoge_nginx db_1 | 2020-01-15T13:44:01.119506Z 0 [Note] mysqld (mysqld 5.7.10) starting as process 1 ... smtp_1 | Starting MailCatcher db_1 | 2020-01-15T13:44:01.131177Z 0 [Note] InnoDB: PUNCH HOLE support available db_1 | 2020-01-15T13:44:01.131222Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins db_1 | 2020-01-15T13:44:01.131227Z 0 [Note] InnoDB: Uses event mutexes 中略 `require_with_bootsnap_lfi' web_1 | 2: from /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register' web_1 | 1: from /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi' web_1 | /usr/local/bundle/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require': Error loading shared library liblzma.so.5: No such file or directory (needed by /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so) - /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so (LoadError) hoge_web exited with code 1

この中の

`require': Error loading shared library liblzma.so.5: No such file or directory (needed by /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so) - /usr/local/bundle/gems/nokogiri-1.10.5/lib/nokogiri/nokogiri.so (LoadError)

が原因かと思い、ググってみたのですが、なかなか解決法が見出せずにいます。
どなたか解決法をご教示いただけないでしょうか。
よろしくお願い致します。

追記
他のMacでも試しているのですが、同じdockerfile, docker-compose.yml, gemfileで起動できます。
このMacだけがうまくいかない。。という状態です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

liblzma.so をインストールし、docker commit することで解決しました。

投稿2020/01/16 03:33

tenten11055

総合スコア67

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問