Docker の基本的な操作を学習した後、コンテナにいくつかの基本的なアプリケーションをデプロイしてみます。 この記事では、Docker で Web アプリケーションをすばやくデプロイする方法について説明します。 まず、マシンに Docker をインストールする必要があります。インストールされていない場合は、yum install -y docker コマンドを使用してインストールします。 yum インストール -y docker Web アプリケーションをデプロイするので、Tomcat は当然不可欠なので、まず Tomcat イメージを取得する必要があります。コマンドは以下のとおりです docker プル tomcat この画像は少し大きいので、時間を節約するために事前に取得しておくことができます。 次にTomcatイメージを使ってコンテナを起動します docker run -it --name webdemo -p 80:8080 tomcat /bin/bash ここでは、webdemo という名前の対話型コンテナーを起動します。-p 80:8080 は、コンテナーのポート 8080 をホストのポート 80 にマッピングすることを意味します。このようにして、ホストのポート 80 にアクセスすることでコンテナー サービスにアクセスできます。 コンテナが作成されたら、コンテナに入り、内部のファイル構造を確認します。そこに webapps ファイルがあります。Web アプリケーションを war パッケージの形式で保存し、このファイルにコピーするだけです。 Tomcat が自動的に war パッケージを解凍してデプロイするからです。 ホストからコンテナにファイルをコピーするにはどうすればいいですか? 以前のターミナルはコンテナ内にあったため、ここで 2 番目のターミナルを開いて操作しました。私はwarパッケージファイルを/mnt/ディレクトリに置きました ホストからコンテナにコピーする コンテナからホストにコピーする ここで使用するコマンドは次のとおりです。 ドッカーcp /mnt/webdemo.war a2f2091a661fa51e02c0be54f252fc46fc604932526b17038ccc267affcef12c:/usr/local/tomcat/webapps 長い文字列はコンテナ ID です。自分で確認してください。 後ろのパスはコンテナの内部パスです。本当に理解できない場合は、コピーすることができます。ここで注意してください:コロンの後にはスペースがありません。コロンの前にスペースがあったのでコピーできませんでした。 次のステップはTomcatを起動することです。 war パッケージがコンテナにインポートされました。これで、最初のターミナルに移動して確認できます。 war パッケージがインポートされたことがわかります。ただし、この時点では Tomcat サービスが開始されていません。Tomcat サービスを開始し、Tomcat を利用して war パッケージを解凍してデプロイできるようにしましょう。 ここで、bin ディレクトリに移動し、ディレクトリ内の catalina.sh ファイルを実行して、Tomcat が実行され、Tomcat がフロントエンドで実行されるようにします。そのために、2 番目のターミナルを開きました。 最後に、ブラウザで効果を確認できます。 このページはデモンストレーション用ですので、他の小さなアプリケーションをお持ちの場合はぜひお試しください。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Vue+canvas は、ウォーターフォール チャートを上から下までリアルタイムに更新する効果を実現します (QT と同様)
>>: MySQL マスタースレーブレプリケーションプロセスの詳細な説明
最近、MySQL オンラインでいくつかのデータ異常が発生しましたが、すべて早朝に発生しました。ビジネ...
Canvas は HTML5 の新しいタグです。js を使用して Canvas 描画 API を操作...
Web プロジェクトを war にパッケージ化するアイデアにとって最も重要なことは、アトリフィカを...
背景モバイル デバイスでは、ページ ジャンプ間のキャッシュが必須要件です。例: ホームページ =&g...
目次スロークエリの基礎: データ取得の最適化データベースから不要なデータが要求されていないか確認する...
コマンドを実行します: docker run --name centos8 -d centos /b...
はじめに<br />前回の記事「私の CSS アーキテクチャ コンセプト」では、公園で友...
感想:私はバックエンド開発者です。静的 (HTML) ページを取得すると、ページ構造と命名規則が極端...
目次1. 環境変数$PATH: 2. 環境変数を変更します。 3. bash_profileの目的要...
免責事項:このパスワード リセット方法は、Homebrew によってインストールされた MySQL ...
最初は悲しい気持ちになりました。スクリーンショットは以下の通りです。 少し苦労しましたが、解決策は次...
目次序文ネットワーク速度のフロントエンド判定原理のまとめ1. img を読み込むか Ajax リクエ...
効果コード内の画像は自分で変更できますドロップダウンメニューのHTMLコード <ヘッダークラ...
DCL (データ制御言語): データベースのアクセス権とセキュリティ レベルを定義し、ユーザーを作成...
袋を用意するインストールApacheがすでにインストールされているかどうかを確認するrpm -qa ...