メニューを閉じる

テクノデジタルグループ

メニューを開く

2018.02.05

開発環境・ツール

DockerでCentOS7起動時にsystemctlが動かないとき

Mです。

どこかで「世界ではubuntuが人気で日本ではCentOSが人気」と見たのですが、
今Google Trendsを見ると日本でもubuntuが人気ですね。(といっても検索数が多いことしかわからないですが)
今度ubuntuの勉強をしておきます。

今回は少し前にやったことなのですが、
Windows10 DockerToolbox環境でCentOS7のコンテナを立ててサービスを起動しようとしたときの話です。

普通に適当(雑の方の意味)に起動するだけだと動かないのです。
対策として下記の3つを使用することで、systemctlが使用できるようになります。
・—privilegedを使用する。
・/sbin/initで起動する。
・上記に合わせ、-itではなく-dで起動し、起動後にexecする。

無事にapacheの起動ができました。
コンテナ作成時に-p 80:80のようにdockerのポートフォワード設定をしておけば、
ブラウザなどから実際にアクセスすることが可能です。

おまけ

共有フォルダの作り方です。あると便利です。
-v <共有したいフォルダパス>:<共有するコンテナのフォルダパス><:roか:rwかなし>
を追加します。
roを付けるとread onlyとなり、書き込みができません。
rwを付けるとread writeとなり、書き込みもできます。
何も付けないとread writeとなるようです。
用途に合わせて使い分けましょう。

まとめ

最終的に今回の記事のものを全て実装すると

上記の起動方法を使用すると
・systemctlが使用できる
・80へつなぐとポートフォワードされてコンテナへと繋がる
・~/share_folderに共有フォルダがある
というコンテナが作成できるので、簡単な試行錯誤ができる環境ができます。


【テクノモバイルではエンジニア/デザイナーを積極採用中です!】

下記項目に1つでも当てはまる方は是非、詳細ページへ!
  • 自分でアプリを作ってみたい
  • ITで世の中にワクワクを生み出したい
  • 使いやすさ、デザインにこだわったWebサイトを開発したい

採用情報の詳細はこちら


Qangaroo(カンガルー)

  • 徹底した見やすさと優れた操作性で、テストの「見える化」を実現。
  • テストの進捗が見える。開発がスマートに進む。
  • クラウド型テスト管理ツール『Qangaroo(カンガルー)』
https://qangaroo.jp/

最近の記事

SNS共有