提问人:brcebn 提问时间:11/10/2023 最后编辑:brcebn 更新时间:11/11/2023 访问量:68
Giltab CI 和图像平台
Giltab CI and images platform
问:
我在 Gitlab 上有一个 Rails 应用程序和整个 CI。
我已经构建了一个 GitlabCI 映像(存储在 Gitlab 注册表中),但我遇到了 Spring 的问题。
当我使用从配备 M2 处理器的 Macbook 构建的映像时,找不到 Spring。
这是坏工作和好工作之间的区别。
# Good
[TEST PROF INFO] Spring detected
# Bad
Starting Spring server with `/usr/local/bundle/gems/spring-4.1.1/bin/spring server --background` timed out after 20 seconds
当它导致和作业失败时。bad
Migrations are pending.
我能够修复构建映像(仅适用于 CI)的问题--platform linux/amd64
在本地,Spring 没有问题,没有待处理的迁移等。
更重要的是,如果我在运行之前强制运行迁移,则出于同样的原因,它无论如何都会失败。rspec
老实说,我不知道 Gitlab Runner 上 ARM 上的 Spring 发生了什么。
这是我用于构建映像的 Dockerfile。
FROM ruby:3.2.2
EXPOSE 3000
LABEL "maintainer"="benebrice"
LABEL "app_type"="backend"
LABEL "service_type"="API"
USER root
ARG RAILS_ENV=development
ENV BUNDLER_VERSION 2.4.19
ENV APP /rails
RUN apt-get update && apt-get install -y lsb-release
# Yarn source
RUN curl -sS "https://dl.yarnpkg.com/debian/pubkey.gpg" | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
RUN apt-key adv --refresh-keys --keyserver keyserver.ubuntu.com
# PSQL 14
RUN wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" | tee /etc/apt/sources.list.d/pgdg.list
RUN apt-get update -qq && apt-get install -y net-tools nodejs postgresql-client-14 cmake nano zsh unzip yarn python3-pip jq psmisc
WORKDIR $APP
# Fix slow IRB issue
# issue: https://github.com/ruby/irb/issues/43
RUN echo 'IRB.conf[:USE_MULTILINE] = false' > ~/.irbrc
RUN echo 'set linenumbers' > ~/.nanorc
# Main app
COPY Gemfile /rails/Gemfile
COPY Gemfile.lock /rails/Gemfile.lock
RUN gem install bundler -v $BUNDLER_VERSION
# Main app
RUN bundle install
RUN gem clean
RUN rm -r /rails/*
# Add a script to be executed every time the container starts.
COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
# Start the main process.
CMD ["bundle", "exec", "puma", "-C", "config/puma.rb", "config.ru"]
答: 暂无答案
评论