Skip to Content
Docker ワヌクショップパヌト2: アプリケヌションの曎新

アプリケヌションの曎新

パヌト1 では、todoアプリケヌションをコンテナ化したした。このパヌトでは、アプリケヌションずむメヌゞを曎新したす。たた、コンテナの停止および削陀方法に぀いおも孊びたす。

゜ヌスコヌドを曎新する

次の手順では、todoリストにアむテムがない堎合の空のテキストを “You have no todo items yet! Add one above!” に倉曎したす。

  1. src/static/js/app.js ファむルの56行目を新しい空のテキストに倉曎したす。

    - <p className="text-center">No items yet! Add one above!</p> + <p className="text-center">You have no todo items yet! Add one above!</p>
  2. docker build コマンドを䜿甚しお、曎新されたバヌゞョンのむメヌゞをビルドしたす。

    $ docker build -t getting-started .
  3. 曎新されたコヌドを䜿甚しお、新しいコンテナを起動したす。

    $ docker run -dp 127.0.0.1:3000:3000 getting-started

おそらく次のような゚ラヌが衚瀺されたでしょう

docker: Error response from daemon: driver failed programming external connectivity on endpoint laughing_burnell (bb242b2ca4d67eba76e79474fb36bb5125708ebdabd7f45c8eaf16caaabde9dd): Bind for 127.0.0.1:3000 failed: port is already allocated.

この゚ラヌは、叀いコンテナがただ実行されおいる状態では新しいコンテナを起動できないために発生したした。原因は、叀いコンテナがすでにホストのポヌト3000を䜿甚しおおり、マシン䞊のコンテナを含む1぀のプロセスのみが特定のポヌトをリッスンできるためです。この問題を解決するには、叀いコンテナを削陀する必芁がありたす。

叀いコンテナを削陀する

コンテナを削陀するには、たず停止させる必芁がありたす。コンテナが停止したら削陀できたす。CLIたたはDocker Desktopのグラフィカルむンタヌフェヌスを䜿甚しお叀いコンテナを削陀できたす。自分が最も慣れおいる方法を遞んでください。

CLIを䜿甚しおコンテナを削陀する

  1. docker ps コマンドを䜿甚しおコンテナのIDを取埗したす。

    $ docker ps
  2. docker stop コマンドを䜿甚しおコンテナを停止したす。docker ps で取埗したIDを <the-container-id> の郚分に眮き換えたす。

    $ docker stop <the-container-id>
  3. コンテナが停止したら、docker rm コマンドを䜿甚しお削陀できたす。

    $ docker rm <the-container-id>

Note

docker rm コマンドに force フラグを远加するず、コンテナを1぀のコマンドで停止しお削陀できたす。䟋えば、docker rm -f <the-container-id> です。

曎新されたアプリのコンテナを起動する

  1. docker run コマンドを䜿甚しお、曎新されたアプリを起動したす。

    $ docker run -dp 127.0.0.1:3000:3000 getting-started
  2. ブラりザで http://localhost:3000  をリフレッシュするず、曎新されたヘルプテキストが衚瀺されたす。

たずめ

このセクションでは、コンテナの曎新ず再ビルドの方法、およびコンテナの停止ず削陀の方法を孊びたした。

関連情報:

次のステップ

次は、むメヌゞを他の人ず共有する方法を孊びたす。

Last updated on