Jenkins + Docker + Maven + Windows implantação com um clique de programas Spring Boot em servidores Linux remotos
Diretório de artigos
1. Preparação
1. Meio Ambiente
- Nativo: Windows 10;
- Local: plugin Jenkins + Publicar sobre SSH;
- local: Maven;
- Remoto: Linux;
- remoto: janela de encaixe;
2. Processo básico
etapas de preparação
- Construa a imagem usando Dockerfile;
A ideia básica
-
A primeira etapa: use
mvn clean package -DskipTests
para empacotar o programa Spring Boot como um pacote jar; -
Passo 2: Use o comando do Windows para copiar o pacote jar para o diretório de trabalho do projeto jenkins;
-
Etapa 3: Use o plug-in Publish Over SSH para enviar o pacote jar para o
/home/zibo/docker/video/app
diretório remoto do Linux; -
Etapa 4: use o plug-in Publish Over SSH para executar
docker restart video-app
e reiniciar o contêiner do aplicativo de vídeo;A imagem precisa ser criada. Se for a primeira vez que o contêiner é iniciado, você precisa iniciá-lo primeiro. Consulte os comandos relevantes abaixo.
3. Comandos relacionados
### 镜像方式启动
# 构建镜像
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. Arquivo Docker
# 该镜像需要依赖的基础镜像
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. Configure o servidor remoto, instale e use o plug-in Publish Over SSH
veja artigo anterior
Jenkins envia arquivos para servidores remotos: plugin Publish Over SSH
https://blog.csdn.net/qq_29689343/article/details/131349578
2. Projeto Jenkins
1. Crie Freestyle project
um projeto
2. Etapas de construção
Etapa 1: Embalagem
D:
cd D:\MyFile\GitHub\perfect-video
mvn clean package -DskipTests
ícone
Etapa dois: copie os arquivos
xcopy /y D:\MyFile\GitHub\perfect-video\target\app.jar C:\ProgramData\Jenkins\.jenkins\workspace\perfect-video
ícone