search
LoginSignup
0

More than 1 year has passed since last update.

posted at

updated at

DockerとAlfredでMySQLとRedisのお手軽環境構築

はじめに

2020 年度 XTech グループアドベントカレンダーの 15 日目の記事です。
エキサイト株式会社、新卒の西牧です。

今回は、Docker と Alfred で MySQL と Redis をお手軽に環境構築する方法を紹介したいと思います。
必要なもの Docker で立ち上げて、Alfred でどこからでも呼び出せるようにするという流れです。
コードはこちら

環境

macOS: 10.15.1
docker-compose: 1.27.4
Alfred: 4.0.9

docker-composeですべて立ち上げる

docker-compose で以下のものを立ち上げます。

  • MySQL
  • Redis
  • adminer
  • redisinsight

MySQL の GUI クライアントには adminer を、Redis の GUI クライアントには redis-insight を使います。
理由としては、デスクトップアプリより web アプリがよかった(個人的にはできるだけ web で完結したい)のと、軽量なことぐらいです。
ちなみに以前は、Sequel Pro と Medis を使っていましたが、どちらもあまり使いやすくなく、adminer と redisinsight の方が個人的にはいいと思います。

$ docker-compose up -d
version: '3'

services:
  redis:
    image: redis:latest
    restart: always
    ports:
      - 6378:6379
    command: redis-server /usr/local/etc/redis/redis.conf
    volumes:
      - ./redis/data:/data
      - ./redis/redis.conf:/usr/local/etc/redis/redis.conf

  redisinsight:
    image: redislabs/redisinsight
    restart: always
    ports:
      - 8011:8001
    volumes:
      - ./redisinsight:/db
    depends_on: 
      - redis

  mysql:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_USER: docker
      MYSQL_PASSWORD: docker
      MYSQL_ROOT_PASSWORD: local_root_password
      MYSQL_DATABASE: db
    ports:
      - 3307:3306
    volumes:
      - ./mysql/data:/var/lib/mysql
      - ./mysql/conf.d:/etc/mysql/conf.d

  adminer:
    image: adminer:latest
    restart: always
    environment:
      # choose your favorite design from https://www.adminer.org/
      ADMINER_DESIGN: lucas-sandery
    ports:
      - 8090:8080
    depends_on:
      - mysql

動作確認

立ち上げられると、GUI クライアントを開いて、MySQL と Redis に接続してみます。

adminer を開くとこんな感じです。デザインは環境変数で変えられます。
接続情報のサーバには、docker-compose.yml で書いたサービス名 mysql を入れます。
image.png

image.png

redisinsight はこんな感じです。
接続情報は以下の通りです。

  • Name: 任意の名前
  • Host: docker-compose.yml で書いたサービス名 redis
  • Port: 6379

image.png

image.png

GUI クライアントをどこからでも呼び出せるようにする

Alfred を使います。
Alfredとはなんぞや?という方は、Alfredを使いこなせてない君に!【Alfredの使い方完全版】
いうたら、spotlight 検索の上位互換みたいなやつです。
Alfred の Web Search に 先ほどの http://localhost:8090/ とかを登録しておくと、ポート番号を覚えておく必要もないし、どっからでも呼び出せるので便利です。
Web Search というのは、URL にキーワードを紐付けて登録しておくと、Alfred でそのキーワードを実行することで、登録した URL をブラウザで開けるというものです。
画像のようにして http://localhost:8090/ を登録してみます。

image.png

登録後、実行すると、登録した URL が自動で開きます。
image.png

おわりに

最近は Docker で入れられるツールも増えてきているので、うまく活用すると、オンボーディングコストさげられそうだなと、これ書いてて思いました。
みなさんもためしてみてください〜

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
What you can do with signing up
0