Jenkins + Docker + Maven + Windows のリモート Linux サーバーへの Spring Boot プログラムのワンクリック デプロイメント

Jenkins + Docker + Maven + Windows のリモート Linux サーバーへの Spring Boot プログラムのワンクリック デプロイメント

1. 準備

1. 環境

  • ネイティブ: Windows 10;
  • ローカル: Jenkins + Publish Over SSH プラグイン。
  • ローカル: Maven;
  • リモート: Linux;
  • リモート: ドッカー;

2. 基本的なプロセス

準備手順

  • Dockerfile を使用してイメージをビルドします。

基本的な考え方

  • 最初のステップ: mvn clean package -DskipTestsSpring Boot プログラムを jar パッケージとしてパッケージ化するために使用します。

  • ステップ 2: Windows コマンドを使用して、jar パッケージを jenkins プロジェクトの作業ディレクトリにコピーします。

  • ステップ 3: Publish Over SSH プラグインを使用して、jar パッケージをリモート Linux/home/zibo/docker/video/appディレクトリに送信します。

  • ステップ 4: Publish Over SSH プラグインを使用してdocker restart video-appビデオアプリコンテナを実行し、再起動します。

    イメージをビルドする必要があります。初めてコンテナを起動する場合は、最初にコンテナを起動する必要があります。以下の関連コマンドを参照してください。

3. 関連コマンド

### 镜像方式启动
# 构建镜像
docker build -t video-app-image .
# 删除镜像
docker rmi video-app-image

# 启动容器
docker run -itd -p 8081:8080 -v /home/zibo/docker/video/app:/app --name video-app video-app-image

# 重启容器
docker restart video-app

# 删除容器
docker rm video-app

# 查看实时日志
docker logs -f video-app

# 进入容器内部
docker exec -it video-app /bin/bash

# 离开容器
exit

4.ドッカーファイル

# 该镜像需要依赖的基础镜像
FROM openjdk:17-jdk

# 创建挂载点
VOLUME /app

# 定义工作目录为/app,命令在此目录下执行
WORKDIR /app

# 指定docker容器启动时运行jar包,并将端口设置为8080
ENTRYPOINT ["java", "-jar", "-Dserver.port=8080", "app.jar"]

# 指定端口 8080
EXPOSE 8080

# 指定维护者的名字为zibo
LABEL maintainer="zibo"

5. リモートサーバーを設定し、Publish Over SSH プラグインをインストールして使用します。

前の記事を参照

Jenkins がリモート サーバーにファイルを送信する: SSH 経由で公開プラグイン

https://blog.csdn.net/qq_29689343/article/details/131349578

2.ジェンキンスプロジェクト

1.Freestyle projectプロジェクトを作成する

画像-20230701142546422

2. 施工手順

ステップ 1: 梱包

D:
cd D:\MyFile\GitHub\perfect-video
mvn clean package -DskipTests

アイコン

画像-20230701142715281

ステップ 2: ファイルをコピーする

xcopy /y D:\MyFile\GitHub\perfect-video\target\app.jar C:\ProgramData\Jenkins\.jenkins\workspace\perfect-video

アイコン

画像-20230701142757398

ステップ 3: ファイルを送信してコンテナを再起動する

画像-20230701143002448

おすすめ

転載: blog.csdn.net/qq_29689343/article/details/131490310