Jenkins(docker版)自动部署vue/uni-app项目经验

Jenkins的原理其实很简单,就是依据各种插件做package、build等功能,然后再帮你去执行一些shell命令,本篇文章参考我之前的两篇

​​​​​​Docker创建Jenkins容器自动部署maven项目经验

vue-cli项目打包用docker部署到服务器

主要功能文件

1.default.conf

/docker/jenkins_home/workspace/Moon-Vue/unpackage/default.conf

server {
    listen   80;
    server_name  localhost; # 修改为docker服务宿主机的ip
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html =404;
    }
​
    error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
    }
}

2.Dockerfile

/docker/jenkins_home/workspace/Moon-Vue/unpackage/Dockerfile

FROM nginx
 
MAINTAINER cick-y
 
RUN rm /etc/nginx/conf.d/default.conf
 
ADD default.conf /etc/nginx/conf.d/
 
COPY dist/ /usr/share/nginx/html/

3.moon.sh

/docker/jenkins_home/moon.sh

cd /docker/jenkins_home/workspace/Moon-Vue/unpackage/
cid=$(docker ps -a| grep "moon")
if [ "$cid" != "" ]; then
        docker stop moon
        docker rm moon
fi
echo "docker ps id"
echo $cid
images=$(docker images| grep "moon" | awk '{print $3}')
if [ "$images" != "" ]; then
        docker rmi $images
fi
echo "docker images id"
echo $images
docker build -t moon:1.0 .
newimages=$(docker images| grep "moon" | awk '{print $3}')
docker run -itd --name moon -p8081:80 $newimages

主要注意事项

1.要用到SSH插件以传输文件为幌子去服务器主机执行shell命令

 注意:项目设置里面的配置SSH是以系统设置全局配置里面的SSH目录为前缀,在它的目录下面去配置的

 2.nodejs插件配置

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值