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

vagrant 複数ホストを起動

ansbileを使おうと思ったんですが、ansibleはホスト1→ホスト2という構成になっているため、2台のホストがないと使えません。 MACであればローカル環境からいけますし、Windowsでもcy …

no image

VPSのCentOS上にVirtualBox+Vagrantをインストール

普段使っているPCにVirtualBox+Vagrantをいれることはあったんですが、VPS上のCentOSに仮想環境を入れたいとの要件があり、試してみました。 結論からすると結局できなかったんですが …

no image

IAMユーザー、ロールのポリシーの付与など

以前、↓のリンクでIAMの基本について少し扱ったので、もう少し具体的なパターンについて。 IAMユーザーについて 押さえておきたい概念としてはやはり ユーザー・・特定のキーなどでログインするユーザー …

no image

sudoとsuについて

基本的なことの復習。 Contents1 su2 sudo2.1 wheel su Switch User。読んで字のごとくユーザーを切り替えるコマンドです。 su suzukiでユーザーsuzuki …

no image

簡易サーバー(http-serverなど)

一般的にwebアプリを構築する際にはApacheやnginxといったwebサーバーを立てることが多いのですが、ローカルの開発環境で入れるのが面倒で、もっと簡易的にサクッと入れられる仕組みが欲しかったり …

アーカイブ