First time build gem Kernel.require

オープン
#116 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
docker, docker-compose, postgres, rails, ruby

調査の方向性

docker-compose.yml と指定された .env の値を使って初回デプロイを再現し、まずログに出ている URI::InvalidURIError から調査を始めます。config/application.rb、ActiveRecord のデータベース設定、bin/rails を通る起動経路を追跡します。seeder、web、worker のコンテナが報告されたエラーなしで正常に起動すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

Deploying Openproject for the first time via docker. Followed the instructions but updated the following in the docker compose file:

docker-compose.yml
db:
image: postgres:16

.env
TAG=16-slim
OPENPROJECT_HTTPS=true
PORT=8089
POSTGRES_PASSWORD=(secret)

I can see I am hitting the proxy for the docker setup with no issues. Then I see seeder, web and worker try to start but then error out. below is the only error I have found and I am seeing it in the worker and web containers (see below for log).

` from /app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.2/lib/active_support/concern.rb:138:in 'ActiveSupport::Concern#append_features'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:299:in 'Module#include'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:299:in '<class:Base>'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:282:in '<module:ActiveRecord>'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:15:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/zeitwerk-2.7.2/lib/zeitwerk/core_ext/kernel.rb:34:in 'Kernel#require'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter/active_record.rb:18:in 'Stringex::ActsAsUrl::Adapter::ActiveRecord.orm_class'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter/base.rb:52:in 'Stringex::ActsAsUrl::Adapter::Base.loadable?'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:17:in 'block in Stringex::ActsAsUrl::Adapter.load_available'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:15:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:15:in 'Stringex::ActsAsUrl::Adapter.load_available'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex.rb:13:in '<top (required)>'

from <internal:/usr/local/lib/ruby/3.4.0/rubygems/core_ext/kernel_require.rb>:37:in 'Kernel#require'

from <internal:/usr/local/lib/ruby/3.4.0/rubygems/core_ext/kernel_require.rb>:37:in 'Kernel#require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel.replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/zeitwerk-2.7.2/lib/zeitwerk/core_ext/kernel.rb:34:in 'Kernel.require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:63:in 'block (2 levels) in Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:58:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:58:in 'block in Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:52:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:52:in 'Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler.rb:215:in 'Bundler.require'

from /app/config/application.rb:40:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands/server/server_command.rb:139:in 'block in Rails::Command::ServerCommand#perform'

from <internal:kernel>:91:in 'Kernel#tap'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands/server/server_command.rb:136:in 'Rails::Command::ServerCommand#perform'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor/command.rb:28:in 'Thor::Command#run'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in 'Thor::Invocation#invoke_command'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command/base.rb:178:in 'Rails::Command::Base#invoke_command'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor.rb:538:in 'Thor.dispatch'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command/base.rb:73:in 'Rails::Command::Base.perform'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:65:in 'block in Rails::Command.invoke'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:143:in 'Rails::Command.with_argv'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:63:in 'Rails::Command.invoke'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands.rb:18:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from bin/rails:4:in '<main>'

/app/vendor/bundle/ruby/3.4.0/gems/uri-1.0.3/lib/uri/generic.rb:207:in 'URI::Generic#initialize': the scheme postgres does not accept registry part: postgres:rzu-wgb5efa9uep2HVZ (or bad hostname?) (URI::InvalidURIError)

from /app/vendor/bundle/ruby/3.4.0/gems/uri-1.0.3/lib/uri/common.rb:159:in 'Class#new'

from /app/vendor/bundle/ruby/3.4.0/gems/uri-1.0.3/lib/uri/common.rb:159:in 'URI.for'

from /app/vendor/bundle/ruby/3.4.0/gems/uri-1.0.3/lib/uri/rfc2396_parser.rb:210:in 'URI::RFC2396_Parser#parse'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations/connection_url_resolver.rb:27:in 'ActiveRecord::DatabaseConfigurations::ConnectionUrlResolver#initialize'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations/url_config.rb:73:in 'Class#new'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations/url_config.rb:73:in 'ActiveRecord::DatabaseConfigurations::UrlConfig#build_url_hash'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations/url_config.rb:44:in 'ActiveRecord::DatabaseConfigurations::UrlConfig#initialize'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations.rb:299:in 'Class#new'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations.rb:299:in 'ActiveRecord::DatabaseConfigurations#environment_url_config'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations.rb:213:in 'ActiveRecord::DatabaseConfigurations#build_configs'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/database_configurations.rb:74:in 'ActiveRecord::DatabaseConfigurations#initialize'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/core.rb:72:in 'Class#new'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/core.rb:72:in 'ActiveRecord::Base.configurations='

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/core.rb:74:in 'block in <module:Core>'

from /app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.2/lib/active_support/concern.rb:138:in 'Module#class_eval'

from /app/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.2/lib/active_support/concern.rb:138:in 'ActiveSupport::Concern#append_features'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:299:in 'Module#include'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:299:in '<class:Base>'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:282:in '<module:ActiveRecord>'

from /app/vendor/bundle/ruby/3.4.0/gems/activerecord-8.0.2/lib/active_record/base.rb:15:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/zeitwerk-2.7.2/lib/zeitwerk/core_ext/kernel.rb:34:in 'Kernel#require'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter/active_record.rb:18:in 'Stringex::ActsAsUrl::Adapter::ActiveRecord.orm_class'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter/base.rb:52:in 'Stringex::ActsAsUrl::Adapter::Base.loadable?'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:17:in 'block in Stringex::ActsAsUrl::Adapter.load_available'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:15:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex/acts_as_url/adapter.rb:15:in 'Stringex::ActsAsUrl::Adapter.load_available'

from /app/vendor/bundle/ruby/3.4.0/gems/stringex-2.8.6/lib/stringex.rb:13:in '<top (required)>'

from <internal:/usr/local/lib/ruby/3.4.0/rubygems/core_ext/kernel_require.rb>:37:in 'Kernel#require'

from <internal:/usr/local/lib/ruby/3.4.0/rubygems/core_ext/kernel_require.rb>:37:in 'Kernel#require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel.replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/zeitwerk-2.7.2/lib/zeitwerk/core_ext/kernel.rb:34:in 'Kernel.require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:63:in 'block (2 levels) in Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:58:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:58:in 'block in Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:52:in 'Array#each'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler/runtime.rb:52:in 'Bundler::Runtime#require'

from /app/vendor/bundle/ruby/3.4.0/gems/bundler-2.6.4/lib/bundler.rb:215:in 'Bundler.require'

from /app/config/application.rb:40:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands/server/server_command.rb:139:in 'block in Rails::Command::ServerCommand#perform'

from <internal:kernel>:91:in 'Kernel#tap'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands/server/server_command.rb:136:in 'Rails::Command::ServerCommand#perform'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor/command.rb:28:in 'Thor::Command#run'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor/invocation.rb:127:in 'Thor::Invocation#invoke_command'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command/base.rb:178:in 'Rails::Command::Base#invoke_command'

from /app/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/lib/thor.rb:538:in 'Thor.dispatch'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command/base.rb:73:in 'Rails::Command::Base.perform'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:65:in 'block in Rails::Command.invoke'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:143:in 'Rails::Command.with_argv'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/command.rb:63:in 'Rails::Command.invoke'

from /app/vendor/bundle/ruby/3.4.0/gems/railties-8.0.2/lib/rails/commands.rb:18:in '<top (required)>'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'Kernel.require'

from /usr/local/lib/ruby/3.4.0/bundled_gems.rb:82:in 'block (2 levels) in Kernel#replace_require'

from bin/rails:4:in '<main>'`
主要言語
Shell
スター
347
フォーク
319
PR マージ指標
30日以内にマージされた PR はありません

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートなし
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

opf/openproject-docker-compose のほかの issue

opf/openproject-docker-compose の issue をすべて見る

似ている issue

Shell/Bash の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。