1. SpringBoootプロジェクトを作成し、jarパッケージにパッケージ化する 2. LinuxでDockerテストを行うためのフォルダを作成する [root@izwz90lvzs7171wgdhul8az ~]# mkdir /root/docker_test 3. jarパッケージをLinuxにアップロードする jarパッケージを保存するフォルダを作成する [root@izwz90lvzs7171wgdhul8az docker_test]# mkdir /root/docker_test/jar 次に、XShellを使用してjarパッケージを上記のフォルダにアップロードします。 4. Dockerfileを書く # Java イメージに基づいて新しいイメージを作成します FROM java:8 # 著者: MAINTAINER Howinfun # jar パッケージをコンテナに追加し、名前を app.jar に変更します。 jar/app.jar /root/docker_test/app.jar を追加します。 # jar パッケージを実行します ENTRYPOINT ["nohup","java","-jar","/root/docker_test/app.jar","&"] 注: ADD 命令と COPY 命令は同じように使用されますが、唯一の違いは、ADD がアーカイブ ファイル (tar、gzip、bzip2 など) の抽出と解凍をサポートしていることです。また、COPY 命令でコピーする必要があるディレクトリは、Dockerfile ファイルと同じディレクトリに配置する必要があることにも注意してください。 5. 鏡を作る ビルド 1.1 より前のバージョンの docker を実行しました。 コマンドパラメータ: -t: 新しいイメージ名を指定します Dockerfileファイルのパスがこのディレクトリにない場合、または別のファイル名の場合は、-fオプションを使用してDockerfileファイルのパスを個別に指定できます。 [root@izwz90lvzs7171wgdhul8az docker_test]# docker build -t sbdemo -f /root/docker_test/Dockerfile /root/docker_test/ コマンドパラメータ: -f: 最初のパラメーターは Dockerfile のパス、2 番目のパラメーターは Dockerfile が配置されているフォルダーです。作成が完了したら、docker images コマンドを使用して、作成したイメージを表示します。 [root@izwz90lvzs7171wgdhul8az docker_test]# docker イメージ | grep sbdemo sbdemo 最新 7efac46ef997 4時間前 686MB 6. コンテナを起動する [root@izwz90lvzs7171wgdhul8az docker_test]# docker run -d -p 8888:8888 --name mysbdemo sbdemo:latest コマンドパラメータ: -d: バックグラウンドで実行 起動後、docker ps を通じて実行中のコンテナを表示できます。 [root@izwz90lvzs7171wgdhul8az docker_test]# docker ps コンテナID イメージ コマンド 作成ステータス ポート名 5096c8c7b36f sbdemo "nohup java -jar /ro?? 4 秒前 2 秒前 0.0.0.0:8888->8888/tcp mysbdemo 7. コンテナの起動ログを表示する 指定されたコンテナのログは、docker ログを通じて表示できます。 [root@izwz90lvzs7171wgdhul8az docker_test]# docker は mysbdemo をログに記録します . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|================|___/=/_/_/_/ :: Spring Boot :: (v2.1.6.リリース) 2019-10-11 02:10:46.264 INFO 1 --- [ main] com.hyf.DatabaseApplication : PID 1 の 6d85ac5d8751 で DatabaseApplication v0.0.1-SNAPSHOT を開始しています (/root/docker_test/app.jar が / で root によって開始されました) 2019-10-11 02:10:46.267 DEBUG 1 --- [ main] com.hyf.DatabaseApplication : Spring Boot v2.1.6.RELEASE、Spring v5.1.8.RELEASE で実行中 2019-10-11 02:10:46.268 INFO 1 --- [ main] com.hyf.DatabaseApplication: アクティブなプロファイルが設定されていません。デフォルトのプロファイルに戻ります: default 2019-10-11 02:10:49.139 警告 1 --- [ main] omsmapper.ClassPathMapperScanner: 名前が「bookMapper」の MapperFactoryBean と「com.hyf.mapper.BookMapper」の mapperInterface をスキップします。同じ名前の Bean が既に定義されています。 2019-10-11 02:10:49.139 警告 1 --- [ main] omsmapper.ClassPathMapperScanner: '[com.hyf]' パッケージに MyBatis マッパーが見つかりません。設定を確認してください。 2019-10-11 02:10:49.246 INFO 1 --- [ main] .sdrcRepositoryConfigurationDelegate : 複数の Spring Data モジュールが見つかりました。厳密なリポジトリ構成モードに入ります。 2019-10-11 02:10:49.257 INFO 1 --- [ main] .sdrcRepositoryConfigurationDelegate : Spring Data リポジトリを DEFAULT モードでブートストラップしています。 2019-10-11 02:10:49.328 INFO 1 --- [ main] .sdrcRepositoryConfigurationDelegate : Spring Data リポジトリのスキャンが 39 ミリ秒で完了しました。リポジトリ インターフェイスが 0 個見つかりました。 2019-10-11 02:10:50.345 INFO 1 --- [ main] trationDelegate$BeanPostProcessorChecker : タイプ [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$2c6b335] の Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' は、すべての BeanPostProcessors による処理の対象ではありません (例: 自動プロキシの対象ではありません) 2019-10-11 02:10:51.255 INFO 1 --- [ main] osbwembedded.tomcat.TomcatWebServer : Tomcat がポート 8888 (http) で初期化されました 2019-10-11 02:10:51.359 INFO 1 --- [ main] o.apache.catalina.core.StandardService : サービスを開始しています [Tomcat] 2019-10-11 02:10:51.359 INFO 1 --- [ main] org.apache.catalina.core.StandardEngine : サーブレット エンジンを起動しています: [Apache Tomcat/9.0.21] 2019-10-11 02:10:51.778 INFO 1 --- [ main] oaccC[Tomcat].[localhost].[/] : Spring 組み込み WebApplicationContext を初期化しています 2019-10-11 02:10:51.779 INFO 1 --- [ main] osweb.context.ContextLoader: ルート WebApplicationContext: 初期化が 5104 ミリ秒で完了しました 2019-10-11 02:10:54.164 INFO 1 --- [ main] ossconcurrent.ThreadPoolTaskExecutor: ExecutorService 'applicationTaskExecutor' を初期化しています 2019-10-11 02:10:56.081 INFO 1 --- [ main] osbwembedded.tomcat.TomcatWebServer : Tomcat がポート 8888 (http) でコンテキスト パス '' で起動しました 2019-10-11 02:10:56.090 INFO 1 --- [ main] com.hyf.DatabaseApplication : DatabaseApplication を 11.49 秒で起動しました (JVM は 12.624 秒実行中) 8. アクセスインターフェース コンテナが起動したら、Postman またはその他の http ツールを使用して、コンテナにデプロイされたアプリケーション インターフェイスにアクセスしてみます。 要約する 上記は、編集者が紹介した Dockerfile を使用して SpringBoot プロジェクトをデプロイする方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: MySQL デッドロックのトラブルシューティングの全プロセス記録
>>: react+antdプロジェクトをゼロから構築する方法を教えます
目次導入1. Tomcatを起動するコード2. Tomcatフレームワーク3. コンテナを作成する ...
この記事では、例を使用して、MySQL スケジュール タスクの実装と使用方法を説明します。ご参考まで...
Postfix は、Linux システム上で電子メールをルーティングまたは配信するために使用される無...
最近、多くの学生から Web ページのエンコーディングについて質問を受けています。gb2312 と ...
目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...
XHTML タグには、div、ul、li、dl、dt、dd、h1~h6、p、a、addressa、s...
実行後、一部の Docker コンテナが終了することがあります。原因を調べるには、Docker コン...
W3C では、さまざまなタグの規定を設定するだけでなく、Web ページの作成者が実際に W3C 規...
序文:サンドボックスといえば、私たちの頭には反射的に上の写真が思い浮かび、すぐに興味がわいてくるかも...
シミュレーション環境を構築する:オペレーティングシステム: centos7メモリ: 1G 1.8.0...
序文同社の Ubuntu サーバーは、さまざまなシステムのディレクトリを異なる論理パーティションに配...
目次1. はじめに2. コードの実装2.1 目的分析2.2 実装プロセス2.2.1 エントリーコード...
目次1. プロジェクト統合1. CDNインポート方法: 2. 箱の梱包を確認する3. 迅速な箱詰め4...
序文注: テストデータベースのバージョンはMySQL 8.0ですテストデータ: テーブルzqs(id...
タイトルで提起された問題は、段階的に分解して解決することができます。 MySQL では KEY と ...