LoginSignup
0
0

【Docker】M1 MacでMySQLコンテナを立ち上げた時にExit(2)する時の対処方法

Last updated at Posted at 2024-06-08

はじめに

M1 MacでMySQLコンテナ起動に少し苦労したので、記事にします。

つまづいた点

以下のコマンドでMySQLコンテナを起動しましたが、docker psでは表示されず、docker ps -aすると、STATUSがExited (2)でした。

docker container run -d \
  --platform linux/amd64 \
  --network wp-net \
  --name mysql \
  --mount source=mysqlvolume,target=/var/lib/mysql \
  --mount type=bind,source=/Users/{your_name}/mysqlbackup,target=/mysqlbackup \
  -e MYSQL_ROOT_PASSWORD=password \
  -e MYSQL_DATABASE=wordpress \
  -e MYSQL_USER=wordpress \
  -e MYSQL_PASSWORD=password \
  mysql:5.7.28
-zsh /var/lib % docker ps -a
CONTAINER ID   IMAGE               COMMAND                  CREATED             STATUS                           PORTS     NAMES
hogefugahoge   mysql:5.7.28        "docker-entrypoint.s…"   5 seconds ago       Exited (2) 4 seconds ago                   mysql

コンテナログを見ると以下のエラーが出てました。

2024-06-08 06:47:19+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.28-1debian9 started.
2024-06-08 06:47:20+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
runtime: failed to create new OS thread (have 2 already; errno=22)
fatal error: newosproc

解決方法

mysqlのバージョンを8系にします。

docker container run -d \
  --platform linux/amd64 \
  --network wp-net \
  --name mysql \
  --mount source=mysqlvolume,target=/var/lib/mysql \
  --mount type=bind,source=/Users/{your_name}/mysqlbackup,target=/mysqlbackup \
  -e MYSQL_ROOT_PASSWORD=password \
  -e MYSQL_DATABASE=wordpress \
  -e MYSQL_USER=wordpress \
  -e MYSQL_PASSWORD=password \
  mysql:8.0.26

docker psで表示されるようになります。

  -zsh /var/lib % docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                 NAMES
hogefugahoge   mysql:8.0.26   "docker-entrypoint.s…"   9 minutes ago   Up 9 minutes   3306/tcp, 33060/tcp   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