2018年7月6日金曜日

DockerでmycliとMySQL5.7がインストールされたコンテナを構築する

mycliは補完機能を備えたMySQLのCUIです。

〇mycliの画面


〇コンテナの構築方法
1. pgcliイメージの作成(Dockerfileがあるフォルダで実行)
docker build -t mycli .

Dockerfile
FROM python:3.6-alpine3.7

RUN apk update \
  && apk add --no-cache --virtual=build-deps gcc build-base python3-dev libffi-dev openssl-dev\
  && pip install mycli \
  && rm -rf /var/cache/apk/* && rm -rf /tmp/*
VOLUME /work
WORKDIR /work
CMD ["/bin/sh"]

2. mycliとMySQL5.7コンテナの構築・実行(docker-compose.ymlがあるフォルダで実行)
docker-compose run mycli
※MySQLが立ち上がる前に接続してしまった場合はエラーとなるので、もう一度実行します。

docker-compose.yml
version: "2"
services:
  db:
    image: mysql:5.7
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    container_name: "mysql-db"
    volumes:
      - "db-data:/var/lib/mysql"
    ports:
      - "3306:3306"
    environment:
      MYSQL_DATABASE: test
      MYSQL_ROOT_PASSWORD: test
  mycli:
    image: mycli
    container_name: "mycli"
    command: /usr/local/bin/mycli -h db -u root -p test test
    stdin_open: true
    tty: true
    volumes:
      - ".:/work"
    depends_on:
      - db
volumes:
  db-data:
    driver: local


○関連情報
・mycliに関する他の記事はこちらを参照してください。

0 件のコメント:

コメントを投稿