Giter Club home page Giter Club logo

im-compose's Introduction

INTER-Mediator for docker-compose sample

Author: sakadonohito

Includes

  • data-container
  • MySQL(5.7)
  • PostgreSQL(9.6)
  • Apache/php7.1.12

準備

  1. git clone https://github.com/sakadonohito/im-compose.git
  2. docker-compose.yml内のDBのrootユーザーのパスワードを変更する
  3. php-apach/html/に移動し git clone https://github.com/INTER-Mediator/INTER-Mediator.git
  4. 必要に応じてサンプルデータを変更する
    • mysql/init/sample_schema_mysql.sql
    • postgres/init/sample_schema_pgsql.sql
  5. INTER-Mediatorのparams.phpを以下のように変更する
//以下3行を追加 ※PostgreSQLを使わないなら�MySQLの分だけで良い
$mysql_host = getenv('MYSQL_HOST');
$pgsql_host = getenv('POSTGRES_HOST');
$dbDSN_PGSQL = "pgsql:host={$pgsql_host};port=5432;dbname=test_db";
//使いたいinclude_PostgreSQL.phpでdsnの指定を$dbDSN_PGSQLに変更する

/*
 $dbDSN = 'mysql:unix_socket=/tmp/mysql.sock;dbname=test_db;charset=utf8';
 の行を以下のように変更 ※�変数展開されるようダブルクォーテーションを使うこと
 */
$dbDSN = "mysql:host={$mysql_host};dbname=test_db;charset=utf8";

Usage

開始

docker-compose up -d

破棄

docker-compose down -v

補足

データコンテナを使いたい場合

データコンテナを使いたい場合はそのように変更してください。 データコンテナの特定領域をDBコンテナのデータ領域にマウントすれば良いと思います。

MySQL

  • 元イメージ:debian jessie
  • version: 5.7.?
  • rootユーザーのパスワードはdocker-composeで変数で渡しています。docker参照元
  • 設定を追加変更したい場合はconfディレクトリ内の設定を追加変更等行ってください。

サンプルデータについて

mysql/initディレクトリ内に INTER-Mediatorのdist-docs にあるsample_schema_mysql.txtを元にしたsample_schema_mysql.sqlをgitにあえて含めています。

必要に応じて内容を変更するか、最新のものに取り替えてください。

PostgreSQL

  • 元イメージ:alpine
  • version: 9.6.6
  • postgresユーザーのパスワードはdocker-composeで変数で渡しています。docker参照元

サンプルデータについて

postgres/initディレクトリ内に INTER-Mediatorのdist-docs にあるsample_schema_pgsql.txtを元にしたsample_schema_pgsql.sqlをgitにあえて含めています。

必要に応じて内容を変更するか、最新のものに取り替えてください。

Apache/PHP7.1.12

  • 元イメージ:debian jessie
  • php version: 7.1.12
  • timezone: Asia/Tokyo
  • pdo_mysql
  • pdo_pgsql

補足

INTER-Mediatorディレクトリをwebのrootとしてマウントしています。

pdo_mysqlなど拡張の追加が必要だったため、officialのイメージそのままではなく、追加処理をしたイメージを使用しています。 ※リポジトリに含まれているDockerfileでビルドしたイメージを使っています。

docker-composeで作成したコンテナがネットワーク上の名前を解決する仕組みをつかているため、params.phpの編集が必須になります。

MySQLやPostgreSQLへの接続(DSN)でのhostの指定は、コンテナの名前を指定すれば通信できます。そのようにparams.phpもしくは、接続設定を書くファイルを編集してください。

im-compose's People

Watchers

 avatar James Cloos avatar

Forkers

msyk

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.