当我尝试在配备 Apple Silicon (M3) 的 MacBook Pro 上为新的 Rails 应用程序构建 Docker 映像时,遇到了分段错误问题。该错误具体发生在RUN SECRET_KEY_BASE_DUMMY=1 ./bin/rails assets:precompileDocker构建过程中的步骤。
一些关键点:
这个问题发生在我配备 Apple Silicon (M3) 的 MacBook 上;我无法再使用 Intel Apple 机器了。
仅构建图像amd64工作正常,表明该问题可能与 ARM 架构有关。
从 Gemfile 和代码库中删除 bootsnap 并没有解决问题。
我看到一些段错误问题表明旧版本的 Docker (4.18) 可以解决该问题,但事实并非如此。
同样,在关闭虚拟化框架的情况下切换到 gRPC FUSE 并不能解决问题。
然而,切换到 Ruby 3.2.2 解决了这个问题。
Rails 应用程序非常简单,使用rails new ohanami -a propshaft -c tailwind. 您可以在此处查看失败的应用程序:https://github.com/miharekar/ohanami/tree/d2170a657a8e6e3d591436b9371e7b1f444220d5
我猜测问题出在 Ruby 3.3.0 或并发 ruby 或 propshaft 中。不知道如何进一步调查,或者向哪里举报。
你建议我做什么?
这是回溯:
#16 [build 5/5] RUN SECRET_KEY_BASE_DUMMY=1 ./bin/rails …Run Code Online (Sandbox Code Playgroud)