下記docker-compose.ymlとDockerfileを作成して
docker-compose.yml
yaml
1version: '2' 2services: 3 dbserver: 4 build: ./db 5 image: db_svr_img 6 container_name: db_svr_cntnr 7 privileged: true 8 tty: true 9 ports: 10 - "3306:3306"
Dockerfile
yaml
1FROM centos:7.4.1708 2 3COPY MariaDB.repo /etc/yum.repos.d 4RUN chmod 644 /etc/yum.repos.d/MariaDB.repo 5RUN yum -y install --enablerepo=mariadb MariaDB-server MariaDB-client 6 7COPY project_svr.cnf /etc/my.cnf.d 8RUN chmod 644 /etc/my.cnf.d/project_svr.cnf
docoker-compose build
にてcentosイメージにmariadb10.2をインストールするところまではできたのですが、シャーディングの為にspiderを有効化し、初期環境としてのフロントノードとバックエンドノードのデータベース・テーブルを作成したものまでをdockerイメージとして構築したいと思っています。
dockerイメージを構築するどこかのタイミングで、下記のようなbashスクリプトを実行して初期環境を構築したいのですが、bashスクリプトの実行方法とbashスクリプトの内容を作成できる方、ご教授ください。
Bash
1#!/bin/bash 2 3#バックエンドノードデータベース作成 4mysql_install_db --datadir=/var/lib/mysql1 --user=mysql 5mysql_install_db --datadir=/var/lib/mysql2 --user=mysql 6 7#Spider有効化 8mysql -uroot -e "SOURCE /usr/share/mysql/install_spider.sql" 9 10#フロントノードにバックエンドノードを設定 11 mysql -uroot -e "CREATE SERVER mysqld1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'spider', PASSWORD 'spider', HOST '127.0.0.1', PORT 3307);" 12 mysql -uroot -e "CREATE SERVER mysqld2 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'spider', PASSWORD 'spider', HOST '127.0.0.1', PORT 3308);"
よろしくお願いします。
あなたの回答
tips
プレビュー