目次
はじめに
コジマです。
ここでやること
- docker-compose.ymlをつくる
- docker-composeコマンドでコンテナを起動する
- A5M2でDBに接続
前提
- dockerおよびdocker-composeはインストール済み
- OSはWindows 10 Pro
docker-compose.ymlをつくる
C:\work\dockerの下にdocker-compose.ymlを作りましょう。
version: '3.8' services: mysql: image: mysql:8.0 container_name: mysql restart: always environment: MYSQL_ROOT_PASSWORD: my-secret-pw MYSQL_DATABASE: mydb ports: ["3306:3306"]
簡単に解説
version: docker-composeのファイルフォーマット。自身の環境でどのバージョンにするかは以下リンク参照 https://matsuand.github.io/docs.docker.jp.onthefly/compose/compose-file/ services: mysql: サービス名。「docker-compose up -d XXX」の「XXX」 image: 使用するイメージ。ここではmysql8.0のイメージ container_name: コンテナ名。「docker ps」の「NAMES」に表示されるやつ。 restart: 自動的に再起動するかどうかの設定。ここでは「always」として自動起動を有効にした。細かくは以下リンク参照 https://docs.docker.com/engine/reference/run/#restart-policies---restart environment: MYSQL_ROOT_PASSWORD: rootユーザのパスワード。 MYSQL_DATABASE: イメージ立ち上げたときに作るデータベース名。今はこだわってないので「mydb」としてみた ports: ["ホスト側のポート:コンテナ側のポート"]という形で書く。配列ぽく書くのがポイント
docker-composeコマンドでコンテナを起動する
powershellで以下のコマンドを実行
cd C:\work\docker docker-compose up -d mysql
ちゃんと起動した確認
docker ps
こんな感じで出てくればOK
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES XXXXXXXXXXXXX mysql:8.0 "docker-entrypoint.s…" 41 minutes ago Up 2 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
A5M2でDBに接続
A5M2を起動し、「データベースの追加と削除」から「追加」=>「MySQL/MariaDB」を選択すると以下の画面になる。
docker-compose.ymlで設定した「my-secret-pw」を入れてテスト接続して「接続に成功しました」と出ればOK。(デフォの接続先mydbにすればよかった)
さいごに
MySQLを選んだ理由はシェアが大きいのと多少は覚えておきたかったからです。
この記事を面白いまたは役に立ったと思ってくれた方は是非私のTwitter(@kojimanotech)を
フォローしてくれたらうれしいです!
以上、コジマでした。