先ほど、Docker を使用して SpringBoot プロジェクトを簡単にデプロイし、Dockerfile とは何かを紹介しました。 1. docker-composeをインストールする環境 CentOS 7 //docker-composeをダウンロード curl -L "https://get.daocloud.io/docker/compose/releases/download/1.27.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose // ファイルに実行権限を追加します。そうしないと、ルートユーザーに権限がありません chmod +x /usr/local/bin/docker-compose //インストールが成功したか確認する [root@SJS local]# docker-compose --version docker-compose バージョン 1.27.3、ビルド 4092ae5d 一般的なコマンド #関連コンテナの構築、作成、起動 docker-compose up -d #関連するコンテナをすべて停止する docker-compose stop #すべてのコンテナ情報を一覧表示する docker-compose ps 2. 展開手順
3. SpringBootプロジェクトをデプロイするプロジェクト全体 1. Dockerfileを書く java:8より # データの保存と永続化のために、Docker コンテナ内にコンテナ ボリュームを作成します。VOLUME /tmp #ファイルをコピーして解凍するために使用されます(COPY では解凍できません) #現在の redpacket-backend-1.0.0-SNAPSHOT.jar を docker コンテナのルート ディレクトリにコピーします。ADD redpacket-backend-1.0.0-SNAPSHOT.jar app.jar #実行プロセス中に app.jar ファイルを作成します RUN sh -c 'touch /app.jar' 環境変数JAVA_OPTS="" # 渡されたパラメータを使用して Linux コマンドを実行し、jar パッケージを起動します # CMD との違いは、複数の CMD コマンドのうち最後の 1 つだけが有効になり、CMD は docker run 後にパラメータに置き換えられることです # ENTRYPOINT によって実行されたコマンドは追加され、ENTRYPOINT は上書きされません [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ] 2. docker-compose.ymlファイルを書く
バージョン: '3.8' サービス: #mysql サービス名 mysql: #使用した画像: mysql:5.7 コマンド: --default-authentication-plugin=mysql_native_password ポート: -3306:3306 環境: MYSQL_ROOT_HOST: '%' MYSQL_ROOT_パスワード: '123456' MYSQL_ALLOW_EMPTY_PASSWORD: 'いいえ' MYSQL_DATABASE: 'redpacket' MYSQL_USER: 'ルート' MYSQL_パスワード: '123456' #マウントする必要があるファイルボリューム: - /mydata/mysql/データ:/var/lib/mysql - /mydata/mysql/log:/var/log/mysql - /mydata/mysql/conf:/etc/mysql 再起動: 常に ネットワーク: -テストネットワーク #SpringBoot プロジェクト サービス redpacket: コンテナ名: redpacket #指定されたディレクトリにDockerfileをビルドする 建てる: コンテクスト: 。 dockerfile: Dockerファイル 依存: -MySQLについて ポート: - 「8090:8090」 再起動: 常に ネットワーク: -テストネットワーク ネットワーク: テストネットワーク: 3. ymlファイルのリンク名の変更に注意する 4. ワンクリックでプロジェクトを開始 プロジェクトのdockerfile、docker-compose.yml、jarパッケージを同じディレクトリに置き、docker-composeを使用して起動します。 成功した 4. 落とし穴使用中に Dockerfile を変更する場合は、 参考記事: https://mp.weixin.qq.com/s/iMl9bJ4SxUsNHBbiS5VUcw https://docs.docker.com/compose/env-file/ https://blog.csdn.net/u011943534/article/details/81392993 これで、MySQL に接続するための SpringBoot プロジェクトの Docker Compose デプロイメントに関するこの記事は終了です。SpringBoot プロジェクトの Docker Compose デプロイメントに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: テキストエリアタグはサイズ変更できず、マウスでドラッグすることもできません
>>: Redo ログと Undo ログに基づく MySQL クラッシュ回復の分析
1: Dockerプライベートウェアハウスのインストール1. イメージリポジトリからイメージをダウン...
MySQL バージョン 5.0 ではストアド プロシージャのサポートが開始されました。ストアド プロ...
実行中のコンテナIDを見つける ドッカーps上記のコンテナの物理的な場所を見つける /var/lib...
この記事では、WeChatアプレットのカスタムタブバーコンポーネントの具体的なコードを参考までに紹介...
目次序文vue.config.js 構成オプションパッケージサイズを縮小するためのパッケージの最適化...
カーソルカーソルは、結果セット内のデータを表示または処理するために使用される方法です。カーソルを使用...
Shutdown.batファイルには次の文があります "%CATALINA_HOME%&q...
序文アプリケーション シナリオ: おそらく、内部 Web サイトは外部ユーザーにアクセス可能である必...
今日、Ubuntu 用の小さなツールを顧客に送りましたが、ユーザーはそれを受け取った後、実行できませ...
コンテンツオーバーフローとは何ですか?実際、テキストが大量にある場合、コンテンツ領域がそれだけの長さ...
<Head>……</head> は <HTML> のファイル ヘ...
導入RANGE パーティション分割は、指定された連続した間隔範囲に基づいています。RANGE の初期...
目次1. Vueフロントエンドを構成する1. クロスドメイン構成を開発する2. 本番環境のクロスドメ...
序文パブリック IP を持つ本番 VPS の場合、必要なポートのみが開かれ、IP とポートを制御する...
目次1. SVGを使用する2. fontAwesomeを使用する3 ソース4 結論テクノロジースタッ...