導入: springboot プロジェクトを実行する Docker の構成は実は非常にシンプルで、Linux 上で直接 springboot を実行するのとまったく同じです。始める 1: まず、Docker環境を実行する必要がありますステップ 1: yum を使用してインストールする (CentOS 7 の場合) Docker を使用するには、CentOS カーネル バージョンが 3.10 以降である必要があります。このページの前提条件をチェックして、お使いの CentOS バージョンが Docker をサポートしているかどうかを確認してください。 uname -rコマンドを使用して現在のカーネルバージョンを確認します。 [root@iZbp1gp1t778obaz5m8vk8Z ~]# uname -r 3.10.0-957.21.3.el7.x86_64 ステップ2: Dockerをインストールする Docker パッケージとその依存関係は、デフォルトの CentOS-Extras ソフトウェア ソースにすでに含まれています。インストール コマンドは次のとおりです。 [root@iZbp1gp1t778obaz5m8vk8Z ~]# yum -y docker をインストールします インストールが完了しました。 ステップ3: Dockerバックグラウンドサービスを開始する [root@iZbp1gp1t778obaz5m8vk8Z ~]# サービス docker を開始 ステップ4: hello-worldをテストして実行する [root@izwz99z5o9dc90keftqhlrz ~]# docker run hello-world Dockerからこんにちは! このメッセージは、インストールが正常に動作していることを示しています。 このメッセージを生成するために、Docker は次の手順を実行します。 1. Docker クライアントが Docker デーモンに接続しました。 2. Docker デーモンは Docker Hub から「hello-world」イメージを取得しました。 (amd64) 3. Dockerデーモンは、そのイメージから新しいコンテナを作成し、 現在読んでいる出力を生成する実行可能ファイル。 4. Dockerデーモンはその出力をDockerクライアントにストリーミングし、Dockerクライアントはそれを 端末に。 もっと野心的なことに挑戦するには、次のコマンドで Ubuntu コンテナを実行できます。 $ docker run -it ubuntu bash 無料の Docker ID を使用して、イメージを共有したり、ワークフローを自動化したりすることができます。 参考: その他の例やアイデアについては、以下をご覧ください。 詳しくはこちら ローカルに hello-world イメージがないので、hello-world イメージをダウンロードしてコンテナ内で実行します。それでは実際に使ってみましょう。 2: まずは独自のdocker springboot構成から始めましょうステップ 1: Docker を実行するための操作アカウントを作成します。新しく追加されました - 次のドキュメントの内容とは関係ありません [操作は通常、root では実行できません] [root@iZbp1gp1t778obaz5m8vk8Z ~]# useradd -d /home/hn-docker -m hn-docker #操作アカウントを作成する [root@iZbp1gp1t778obaz5m8vk8Z ~]# [root@iZbp1gp1t778obaz5m8vk8Z ~]# passwd hn-docker #パスワードの変更 ユーザーhn-dockerのパスワードを変更しています。 新しいパスワード: パスワードが正しくありません: パスワードに何らかの形でユーザー名が含まれています 新しいパスワードを再入力してください: passwd: すべての認証トークンが正常に更新されました。 [root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo groupadd docker #docker ユーザー グループを追加します。すでに存在する場合は必要ありません。 [root@iZbp1gp1t778obaz5m8vk8Z ~]# sudo gpasswd -a hn-docker docker ##ログインしているユーザーを docker ユーザー グループに追加します ユーザー hn-docker をグループ docker に追加しています ステップ2: Dockerの運用とメンテナンスを開始する [root@izwz99z5o9dc90keftqhlrz Docker]# pwd /ルート/Docker [root@izwz99z5o9dc90keftqhlrz ドッカー]# [root@izwz99z5o9dc90keftqhlrz ドッカー]# [root@izwz99z5o9dc90keftqhlrz Docker]# mkdir elasticsearch [root@izwz99z5o9dc90keftqhlrz ドッカー]# [root@izwz99z5o9dc90keftqhlrz Docker]# cd elasticsearch/ [root@izwz99z5o9dc90keftqhlrz エラスティックサーチ]# 1. mvn installを実行してプロジェクトをjarパッケージにパッケージ化します。 [root@izwz99z5o9dc90keftqhlrz elasticsearch]# Dockerfile をタッチする [root@izwz99z5o9dc90keftqhlrz elasticsearch]# vi Dockerfile # ベースイメージはJavaを使用しています java:8より # メンテナー shixiong <[email protected]> # VOLUME は一時ファイル ディレクトリを /tmp として指定します。 # 効果は、ホストの/var/lib/dockerディレクトリに一時ファイルを作成し、それをコンテナの/tmpにリンクすることです。 ボリューム /tmp # jar パッケージをコンテナに追加し、名前を app.jar に変更します。相対パスまたは絶対パスを使用できます。ここで、相対パスは ADD springboot-es6.jar /springboot-es6.jar です。 # jar パッケージを実行します RUN bash -c 'touch /springboot-es6.jar' #タイムゾーンを設定します。そうしないと、現在の時刻より 8 時間遅くなります。RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/springboot-es6.jar"] 3: SpringbootプロジェクトをDockerにビルドし、Dockerイメージを生成する3. フォルダーに入り、コマンドを実行します。バージョンの有無で実行した場合の結果は異なります。 ! ! springboot をビルドします。 上記の構成: ランタイムコマンドは次のとおりです。 [root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6:v1.0 springboot をビルドします。 上記の構成: ランタイムコマンドは次のとおりです。 [root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6 v1.0 で生成されたイメージでは、間違ったコマンドは次のようになります。 4: DockerでSpringbootプロジェクトを実行する[root@izwz99z5o9dc90keftqhlrz elasticsearch]# docker run -d -p 8099:8099 springboot-es6 e7a56662f804ef72e7dcae3fa71e840c35e28e18aa1aff7e98b71d900b17c305 [root@izwz99z5o9dc90keftqhlrz エラスティックサーチ]# 5: インターフェースが使えるか確認するインターフェースは完璧に使用されており、以下ではコンテナを管理してログを表示する方法について説明します。 Linux Docker で springboot プロジェクトを実行する方法についてはこれで終わりです。Docker で springboot プロジェクトを実行する方法については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS を使用して複数の方法で下揃えを実装するサンプル コード
>>: Mysql 主キー UUID と自動増分主キーの違いと利点と欠点
目次実装のアイデアアカウント パスワードを保存する方法は 3 つあります。機能インターフェースアカウ...
1. 背景最近、友人が大規模なマップの読み込みが遅いという問題に遭遇しました。iServer のパ...
先ほど MySQL パスワードを設定したのに、外食したり荷物を受け取ったりするときにパスワードを忘れ...
CSS を使ってさまざまなグラフィックを実現できるのは素晴らしいことです。画像を切り取る必要はなく、...
ディスク領域の管理は、システム管理者にとって重要な日常的なタスクです。ディスク領域が使い果たされると...
目次質問再生暗黙的な変換要約する参照する質問仕事中、1 つの SQL クエリ ステートメントのみを実...
このロゴを .rar ファイルとしてローカルに保存し、解凍して効果を確認することができます。よりシン...
最近のプロジェクトでは、ポイントを集める効果を作成する必要があります。 ボスの説明によると、この効果...
半透明の境界線結果: 実装コード: <div> 半透明の境界線が見えますか? </...
Swarm クラスター管理導入Docker Swarm は Docker 用のクラスター管理ツールで...
目次1. v-for: 配列の内容を走査する(よく使われる) 2. v-for: オブジェクトのプロ...
pt-ハートビートデータベースがマスターとスレーブ間で複製される場合、複製ステータスとデータ遅延は非...
初心者の Linux ユーザーとして、私は単純なgcc/g++操作を何度も使用してきましたが、少し複...
CSS (カスケーディング スタイル シート) は、HTML Web ページを美しくするために使用さ...
目次ローカルでコンテナを作成した後、このコンテナに基づいてローカル イメージを作成し、このイメージを...