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

SELinuxによるファイル制限+MySQLアクセスエラー

新サーバーにApacheをいれて特定のファイルにアクセスしようとしたところ、 以下のようなエラーがでてしまいました。

ただPermis …

no image

サーバーの過負荷の発見 メモリ使用率の調査&抽出、置換(awk,sed)コマンドについて

前回、サーバーの負荷調査について記事を書いたので、それに関するスクリプトを。 Contents1 仕様2 ソース3 解説3.1 freeコマンド3.2 awk3.3 sed 仕様 日付とメモリ使用率、 …

no image

linuxでのherokuのインストール&パスの通し方

linuxでのherokuのインストールやパスの通し方について 原則としてruby入ってないとダメっぽいです。(しかもruby1.8系だと2016年6月現在エラーが出ますので最新バージョンをインストー …

no image

WinSCPの活用法

WinSCPの活用方法などについて WinSCPでZIPの解凍、ZIPへの圧縮を右クリックからカスタムコマンドで実行できるようにする。 特にzipでファイルを固める処理はよくやるので覚えておきましょう …

no image

laravel+vessel

現場のリーダー的な方に進められてVesselというDockerのインストールなどをサポートするツールを触ってみました。 特にlaravelのインストールなどに向いていますが、laravelでなくとも使 …