0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

M1チップ搭載macbookでのDockerを用いたMYSQLの接続方法(Rails)

Last updated at Posted at 2021-06-30

M1チップ搭載macbookでのDockerを用いたMYSQLの接続方法(Rails)

データベース周りの環境構築時につまずいた部分なので、自分なりのエラー解決方法を記載します。

Ruby ver
Ruby 2.7.2
Rails ver
5.2.6
Docker Engine ver
Docker Engine v20.10.6
MySql ver
5.7.34

docker-compose.ymlの編集

docker-compose.yml
version: '3.2'

services:
  database:
    restart: always
    image: mysql:latest
    ports:
      - 3306:3306
    command: --default-authentication-plugin=mysql_native_password
    volumes:
      - mysql-datavolume:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: root

volumes:
  mysql-datavolume:
    driver: local

上記のファイルでdocker-compose buildし、docker-compose up -dするとエラーコードが出ることがあります。

Pulling database (mysql:latest)...
latest: Pulling from library/mysql
ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

上記エラーコードが出た場合は、まずローカルにインストールされているmysqlのバージョンを確認してください。
確認後に、database.yml内のimage: mysql:latestimage: mysql:ローカルにインストールされているmysqlのverに指定してください。
その後、ローカルにインストールされているmysqlLのverをdockerにpullします。

docker pull --platform linux/amd64 mysql:(ローカルにインストールしているmysqlのバージョン)

この後、docker-compose up -dするとエラーすることなく、dockerが立ち上がります。
あとは、database.yml内で設定したパスワードのrootを使用すれば、mysqlに接続できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?