jenkins部署项目

发布时间 2023-03-27 13:38:31作者: jalivv

jenkins部署项目

  • 配置代码仓库

    image-20230327132418430

  • 构建

    image-20230327132654965

    Exec command

    切换到工作目录

    自增version

    cd /opt/salesea/jars/api-service/
    sed -i 's/version=\([0-9]\+\.[0-9]\+\.[0-9]\+\)/echo "version=$(echo \1 | awk -F. '\''{print $1"."$2"."$3+1}'\'')"/e' version
    
  • 服务器脚本

    # cat version
    version=1.0.0
    
    
    # cat build-docker.sh
    #!/bin/bash
    version=$(cat version |grep -oP \([0-9]\+\.[0-9]\+\.[0-9]\+\))
    echo "build image salesea-api:$version"
    result=$(docker build -t salesea-web:$version .)
    if [ $? -eq 0 ]; then
       docker compose down && sed -i 's/image: salesea-web:\([0-9]\+\.[0-9]\+\.[0-9]\+\)/echo "    image: salesea-web:'${version}'"/e' docker-compose.yml && docker compose up -d
    else
        echo "Faild build image"
    fi
    
    
    # cat Dockerfile
    FROM nginx:latest
    WORKDIR /usr/share/nginx/html
    ADD dist.tar.gz .
    RUN mv /usr/share/nginx/html/dist/* /usr/share/nginx/html/ && \
        rm -rf /usr/share/nginx/html/dist
    EXPOSE 80