【初心者向け】作成済みDockerコンテナを起動する方法|停止中コンテナの確認&起動コマンドまとめ

Docker

Dockerを使っていて、一度作成したコンテナを停止させた後に「もう一度動かしたい!」と思ったことはありませんか?

そんなとき、新しく作り直さなくてもOK。Dockerではすでに作成済みのコンテナを再起動することができます。

この記事では、作成済みのDockerコンテナを起動する方法をわかりやすく解説し、よくあるエラーや注意点もあわせて紹介します。

Docker初心者でも今日から使える内容になっています!

スポンサーリンク

コンテナのライフサイクルとは?

Dockerコンテナには、以下のような状態(ステータス)があります:

  • created(作成済み、未起動)
  • running(実行中)
  • exited(停止済み)
  • paused(一時停止)

コンテナは一度停止しても、何度でも起動し直すことが可能です。

作成済みコンテナを確認する方法

● すべてのコンテナを確認:

docker ps -a

● 出力例:

CONTAINER ID   IMAGE     STATUS             NAMES
e1f3a4cbd234   nginx     Exited (0) 2 days ago   my-nginx
fa3d9e2a34bc   ubuntu    Up 3 hours             ubuntu-shell

この例では「my-nginx」が停止中(Exited)なので、再起動可能です。

停止中コンテナを起動するコマンド

● 起動コマンド:

docker start コンテナ名またはID

例:

docker start my-nginx

これで、「my-nginx」コンテナがバックグラウンドで再起動します。

● 起動後にすぐアタッチ(出力表示したい)場合:

docker start -a コンテナ名

● 起動してシェルに入る(例:Ubuntuコンテナ):

docker start -ai ubuntu-shell

コンテナの再起動(restart)との違い

● docker restartとは?

docker restart コンテナ名

これは「一度停止してすぐ再起動」するコマンドです。
すでに停止している場合は、docker startとの違いはありません。

ただし、実行中のコンテナにも使える点が特徴です。

起動時の注意点とトラブル対処

● 起動してもすぐ終了してしまう

原因:

  • 元のコンテナが--rmオプション付きで作られていた可能性あり(起動後に自動削除される)。
  • また、実行するコマンドが一瞬で終わるタイプ(echoなど)だと、すぐ終了します。
  • 何かしらのエラーが発生している

対策docker logs コンテナ名でエラーログ確認

● 起動してもログが表示されない

docker startはデフォルトで非アタッチ(出力を表示しない)
-aオプションでアタッチしましょう。

● 名前を忘れた場合

docker ps -

で一覧から名前やIDを確認すればOKです。

まとめ:コンテナの再利用で効率アップ!

Dockerでは、1度作ったコンテナは何度でも起動・停止できるのが大きな強みです。

覚えておきたい基本コマンド:

操作コマンド例
停止中のコンテナを起動docker start my-container
出力を表示しながら起動docker start -a my-container
一度停止して再起動docker restart my-container
コンテナ一覧確認docker ps -a

これらの操作をマスターすれば、無駄な再構築やイメージの再取得を防ぎ、開発効率も大幅アップします!

コメント

タイトルとURLをコピーしました