skillup

技術ブログ

サーバー・ネットワーク

docker-compose(CentOS7系やMySQLのオプションなど)

投稿日:

以前、docker-composeを使った記事は使ったのですが、

実際にCentOS7やMySQLを扱った時につまづいたことなどを。

CentOS7系のメモ

dockerでコンテナを起動する場合CentOS7(というかsystemctl)を使う場合、通常の起動コマンドである、 docker run -it --name centos イメージ名 /bin/bashをすると Failed to get D-Bus connection: Operation not permitted なるエラーが出て起動できません。

どうやらCentOS7系では(systemctlを使っているため)通常のコマンドでは動かないようです。

オプションとして --privileged を渡して上げるのと起動スクリプトを /sbin/init にする必要があります。

起動コマンドしては下記のようになります。

docker run --privileged -it -d  --name コンテナ名 イメージ名 /sbin/init

ちなみにコンテナにログインする時は通常通り、 docker exec -it コンテナ名 /bin/bash でいいようです。

docker-compose

docker-composeの設定を書くと下記のようになります。

参考リンク

CentOS7 に Docker をインストールし、CentOS7コンテナ上で Apache を起動する

MySQLのdocker-compose

MySQLの場合、コンテナ起動時に

  • 設定ファイルのコピー
  • DB、テーブルの作成
  • 権限の作成

などが可能です。

./mysql/Dockerfile

mysql/init/init.sql

./mysql/my.cnf

docker-compose.yml

上記の用に書いておくとコンテナ起動時に自動的に設定ファイルのコピー、DB、テーブル、権限の作成などを行うことができます。

 

 

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

セッションとクッキーについて

セッションとクッキーについての違いを整理しておこうと思います。 Contents1 そもそものHTTPプロトコルについて2 ステートフルな状態を実現するために2.1 方法1 クライアント側で情報を保持 …

no image

herokuでのLet’s Encrypt設定

herokuで運用しているアプリでhttps設定(Let’s Encrypt)をしたいという要望があり、調査、設定をすることに。 当然herokuでなくても大丈夫です。 過去に行ったhtt …

no image

MacでのVirtualHost設定

MacでのVirtualHostについて。 Contents1 設定方法2 注意点2.1 httpd -S2.2 httpd: Could not reliably determine the ser …

no image

Addtypeについて

htmlにはPHPを埋め込むことができますが、拡張子がhtmlの場合、そのままでは実行できません。 この場合、通常では拡張子を変えなければいけないところですが、apacheを使っている場合、設定ファイ …

no image

rewriteディレクティブ

リクエストURIを条件に応じて書き換えたり、リダイレクトする機能を使うときはrewriteを使います。こちら非常によく使う機能です。 具体的な例を見ていきましょう。 [crayon-5f284a42d …