LoginSignup
0
0

More than 1 year has passed since last update.

docker-compose up -dが出来なくて詰まった話

Posted at

はじめに

最近学習しているKotlinの書籍の中でDockerを使用するため、学習メモとして残しております。
Dockerに対しての知識は浅いので、認識が間違っている点があったらご指摘いただけると嬉しいです。

今回の事象

docker-compose.ymlファイルを作成したのち、下記コマンドを実行するとエラーが発生する。

MacBook-Pro docker % sudo docker-compose up -d
[+] Running 0/0
 ⠋ Container mysql_host  Starting                                                                                                                                                                      0.1s
Error response from daemon: network docker_default not found

解決方法

「docker_default」と言う名前のネットワークが存在しないため発生したエラー。
そのため、下記コマンドでネットワークを作成後、再度コマンドを実行することで成功しました。

-- ネットワークの作成
MacBook-Pro docker % docker network create --driver bridge docker_default
920b19dd460fc74d656df6c42243494735c1fdff0d116232b350f1513c3de732

--  
MacBook-Pro docker % sudo docker-compose up -d                                                 
[+] Running 1/1
 ⠿ Container mysql_host  Started

補足

Docker Composeとは

構築に関わるコマンドの内容を1つのテキストファイルとしてまとめ、一気に実行したり、停止・破棄することができる。
参考として今回使用したdocker-compose.ymlファイルを記載します。
ちなみにcommandの横にある「mysqld」の「d」の記載漏れでエラーになり、なかなか気づかず奮闘したので今後気をつけよう…。

version: '3'
services:
  # MySQL
  db:
    image: mysql:8.0.30
    ports:
      - "3306:3306"
    container_name: mysql_host
    environment:
      MYSQL_ROOT_PASSWORD: mysql
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    volumes:
      - ./db/data:/var/lib/mysql
      - ./db/my.cnf:/etc/mysql/conf.d/my.cnf
      - ./db/sql:/docker-entrypoint-init-initdb.d

さいごに

今回の場合はエラーメッセージをしっかり読めばすぐに解決したことだなと反省しました。英語が苦手で、英語で書かれたサイトは今まであまり見ていなかったけど、google翻訳が思っていたより有能で、これからは逃げずにしっかり確認してみようと思いました。

参考資料

・Kotlin サーバーサイドプログラミング実践開発

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