yunyun_engineer
@yunyun_engineer (yunyun)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

プラットフォームがサポートされていないエラー、TravisCIがうまくいきません

環境

ruby 2.6.5
rails 6
MySQL
M1チップ搭載macOS

解決したいこと

プラットフォームがサポートされていないエラー、travis.ymlがうまく走りません。
また、sudoは非推奨、効果がないとエラーが出てます。代替はroot権限の記述が必要でしょうか?よくわかりません
わかる方がいらしたら教えてください!
よろしくお願いします。

発生している問題・エラー

画像の説明をここに入力
画像の説明をここに入力

該当するソースコード

.Travis.yml

language: ruby
os: linux
dist: xenial
sudo: true
services: docker

before_install:
  - docker-compose up --build -d

script:
  - docker-compose exec --env 'RAILS_ENV=test' web rails db:create
  - docker-compose exec --env 'RAILS_ENV=test' web rails db:migrate
  - docker-compose exec --env 'RAILS_ENV=test' web rails db:seed
  - docker-compose exec --env 'RAILS_ENV=test' web rails test

Dockerfile


FROM ruby:2.6.5

RUN apt-get update && apt-get install -y curl apt-transport-https wget && \
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
apt-get update && apt-get install -y yarn

RUN apt-get update -qq && apt-get install -y nodejs yarn
RUN mkdir /fridge_app
WORKDIR /fridge_app
COPY Gemfile Gemfile.lock /fridge_app/
ENV BUNDLER_VERSION 2.1.4
RUN gem update --system \
    && gem install bundler -v $BUNDLER_VERSION \
    && bundle install -j 4
COPY . /fridge_app

RUN yarn install --check-files
RUN bundle exec rails webpacker:install

ENV PATH $PATH:/usr/local/src/bin

COPY entrypoint.sh /usr/bin/
RUN chmod +x /usr/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]
EXPOSE 3000

CMD ["rails", "server", "-b", "0.0.0.0"]

docker-compose.yml

version: '3'
services:
  db:
    image: mysql:5.6
    platform: linux/amd64
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: root
    ports:
      - "3306:3306"
    volumes:
      - ./tmp/db:/var/lib/mysql

  web:
    build: .
    environment:
      region: ap-northeast-1
      AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
      AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
    command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"
    volumes:
      - .:/fridge_app
    ports:
      - "3000:3000"
    depends_on:
      - db

0

1Answer

sudoは非推奨、効果がないとエラーが出てます。代替はroot権限の記述が必要でしょうか?

そもそも何のために設定しようとしているのですか?

プラットフォームがサポートされていないエラー

platform

platformはdocker composeバージョン2.4で追加されたようです。
サポートされていないということは、TravisCIのはそれよりも古いのではないでしょうか?

使用しているdocker composeのバージョンと、古いならアップデートする方法はないか調べてみてはいかがでしょうか?

0Like

Your answer might help someone💌