多くの友人が、Docker でプロジェクトを実行する方法をずっと知りたがっていました。今日は、自分のプロジェクトを Docker (Centos) に公開する方法を紹介します。 仮想マシンをインストールするDockerをダウンロードする公式ウェブサイトのリンクに直接アクセスしてください:Docker 公式ドキュメント。 1.公式ホームページを開き、ダウンロードとインストールを選択します 2. Linux用のDockerを選択する 3. CentOSのバージョンを選択します(システムに応じて適切なバージョンを選択してください) 4. 公式サイトの操作手順に従う(必要な手順を自分で選択する) 1) 以前にインストールしたDockerを削除する(必須) sudo yum dockerを削除します\ dockerクライアント\ docker-client-最新 \ docker-common \ docker-最新 \ docker-最新-logrotate \ docker-logrotate \ dockerエンジン 2) yumツールパッケージをインストールする(必須) sudo yum インストール -y yum-utils 3) Dockerリポジトリを追加する(必須) sudo yum-config-manager \ --リポジトリを追加\ https://download.docker.com/linux/centos/docker-ce.repo 4) オプションパラメータ(選択に応じて追加) 5) Docker Engine をインストールします (必須。他のバージョンをインストールする場合は、この手順をスキップできます) sudo yum インストール docker-ce docker-ce-cli containerd.io 6) Docker のオプション バージョンを表示します (手順 5 を完了している場合は、この手順をスキップしてください) yum list docker-ce --showduplicates | sort -r 7) 必要に応じて特定のバージョンの Docker をインストールします (手順 5 を完了している場合は、この手順をスキップしてください) sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io 8) Dockerを起動する(必須) sudo systemctl dockerを起動します 9) 起動時にDockerが自動的に起動するように設定する(オプション) systemctl ドッカーを有効にする 10) Docker イメージ アクセラレーションを設定する (オプション、イメージのダウンロード速度を上げることができます) sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "レジストリミラー": ["https://sfgi0c9b.mirror.aliyuncs.com"] } 終了 sudo systemctlデーモンリロード sudo systemctl dockerを再起動します 5. Docker がインストールされたので、Web プロジェクトを手動でイメージにデプロイして、Docker の状態をテストします。プロジェクトを Docker に公開する方法を知りたい場合は、この手順をスキップできます。 Web プロジェクトを手動で Docker にデプロイする1. Webプロジェクトを作成してパッケージ化する(war) リンク: docker hub。 tomcat8をインストールします。タグタブを選択し、バージョンを選択します。 docker pull tomcat:8.5-jdk8-corretto 画像をダウンロード 3. ダウンロードした画像を表示する Docker イメージ 4. イメージのインスタンスを実行してフォルダを作成する mkdir -p /mydata/tomcat/webapps Webプロジェクトを/mydata/tomcat/webappsディレクトリにアップロードします。 rzコマンドをインストールします(ファイル転送ツールをお持ちの場合は、独自のツールを使用できます) yum インストール lrzsz cd /mydata/tomcat/webapps rzコマンドを実行してファイルをアップロードします
ファイルが存在するか確認する
Tomcatインスタンスを起動する docker run --name tomcat -itd -v /mydata/tomcat/webapps:/usr/local/tomcat/webapps -p 8080:8080 d2b d2b はイメージ ID の最初の 3 文字です。イメージ名とタグを記述できます。--name はインスタンスに名前を付けます。 現在のプロジェクト パッケージが解凍され、例が実行されていることがわかります。 docker ps (実行中のインスタンスを表示する) docker ps -a (開始済みと未開始のものを含むすべてのインスタンスを表示) インスタンスが開始され、効果を試すことができます
5. ポート番号を 80 に変更するにはどうすればいいですか? 1) 元のインスタンスを停止して削除する docker 停止 tomcat docker rm <インスタンスID> 2) インスタンスを再実行してポート80をマップする tomcat の webapps ディレクトリに docker run を実行します。 3) コンテナに入る docker exec -it tomcat /bin/bash tomcatは作成されたばかりのインスタンス名です 4) /usr/local/tomcat/conf/server.xml を見つけて変更します。コンテナに入る方法は外部操作と同じです。 vi /usr/local/tomcat/conf/server.xml 5) コンテナから出る
6) コンテナを再起動する docker で tomcat を再起動する // コンテナが起動時に自動的に起動するように設定する docker update --restart=always <コンテナ名> 6. コンテナをパッケージ化して他の場所にデプロイするにはどうすればよいですか? docker commit -a "zhnagdong" -m "test" d98 tomcattest 2) パッケージ化された画像を表示する Docker イメージ 次に、イメージを 2 つの方法でエクスポートします。1 つ目は、ファイルを直接エクスポートして移動する方法です。2 つ目は、Docker Hub にアップロードしてからリモートでプルする方法です。 docker save -o tomcat.tar 814 //-o はファイル 814 として保存された画像の ID を表します 適切な場所にコンテナをインポートする docker load --input tomcat.tar または docker load < tomcat.tar 4) docker リポジトリにアップロードする (まず登録するために docker hub アカウントを持っている必要があります) docker タグ tomcattest:latest dwyerdocker/tomcattest:v1 //tomcattest:latest 形式は REPOSITORY:TAG です Docker Hubアカウントにログインする dockerログイン イメージをリモートリポジトリにプッシュする docker push dwyerdocker/tomcattest:v1 弊社の倉庫に来て、適切な場所から画像を取得してください 上記は、docker の基本的な使用方法です。次に、idea を使用して docker イメージを構築し、プロジェクトをデプロイする方法について説明します。 アイデアを通じてプロジェクトをDockerにデプロイする1. まず、docker 構成ファイルを変更して、リモートからアクセスできるようにします。docker はデフォルトで tcp プロトコルをサポートしていないため、tcp プロトコルを有効にするには、docker 構成ファイルを開く必要があります。 vi /lib/systemd/system/docker.service Execstart -H tcp://0.0.0.0:2375 の最後に TCP プロトコルを設定します。 Dockerを再起動する systemctlデーモンリロード systemctl dockerを再起動します プロセス情報を見ると、dockerはすでにtcpプロトコルをサポートしていることがわかりました。 ps -ef | grep docker 2. ideaにdockerプラグインがインストールされていることを確認する 3. ルートパスにDockerFileファイルを作成する java:8より ボリューム /tmp /target/spring-demo-0.0.1-SNAPSHOT.jar app.jar を追加します。 エクスポーズ8080 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] 4. dockerが接続されているかどうかをテストする アクセスタイムアウトが発生した場合は、ファイアウォールが閉じられているかどうかを確認してください。 systemctl 停止 ファイアウォール 5. 設定を追加する 公開ポート番号を設定する 6. プロジェクトをパッケージ化する 7. 右クリックして展開する デプロイする前に Docker を再起動することをお勧めします。ポート番号の競合に注意してください。 8. 効果を確認する これで、アイデアを通じてプロジェクトを Docker にパッケージ化する方法についての説明は終わりです。Docker へのアイデアのパッケージ化に関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: MySQL sql_mode の使用に関する詳細な説明
Vue で SVG アイコンを導入する方法Vue で svg アイコンを導入する方法 1インストール...
共同インデックスこの記事におけるジョイントインデックスの定義は次のとおりです (MySQL): AL...
多くのネットユーザーは、なぜ自分のウェブサイトはいつも色の問題を抱えていて、いつも地味に見え、注目を...
色はあらゆるウェブサイトにとって最も重要な要素の 1 つであり、閲覧者に大きな影響を与えるため、色の...
目次SQL文を挿入する前にレコードが既に存在するかどうかを確認するSQL挿入時の判断の簡単なコレクシ...
Linuxでタイムゾーンを変更する場合、常に変更することはできませんAsia/Shanghai に変...
文書タイプDoctype は、指示を解析するためにどのバージョンの HTML を使用するかをブラウザ...
MySQL のインストールについてはインターネット上に多くの記事がありますが、今日ノート PC にイ...
1. ファイアウォールの状態を確認するファイアウォールのステータスを確認する systemctl s...
まずMySQLのインストールMySQLソフトウェアをダウンロードし、インストールパスを変更しますMy...
【序文】当プロジェクトの SMS 機能は、第三者に接続することです。第三者からの元の受信確認要求は ...
目次序文: 1. デフォルト値に関する操作2. 使用上の提案要約:序文: MySQL では、テーブル...
今日は、企業の実際の本番環境でよく遭遇する、Nginx を新しいバージョンにアップグレードし、古いバ...
目次問題の説明一般的な機能効果は次のとおりです。思考分析完全なコード要約する問題の説明Teambit...
誰もが色にとても敏感だと思います。私たちの目が見るところにはどこにでも色があります。では、CSS で...