本文作者:ansh

linux系统使用jenkins docker 自动部署.net core

ansh 2022-07-10 251 抢沙发
linux系统使用jenkins docker 自动部署.net core摘要: 缺点:在服务器编译,编译时需要占用cpu和内存资源,基本可以废弃,可以考虑利用Azure devops或者阿里云效。...

缺点:在服务器编译,编译时需要占用cpu和内存资源,基本可以废弃,可以考虑利用Azure devops或者阿里云效。


1:任意云服务器,轻量云比较便宜。

阿里云:https://www.aliyun.com/activity/1111/newuser1st?userCode=1vqzj9qj

腾讯云:https://curl.qcloud.com/t8vLvWQn

2:安装宝塔面板

宝塔面板官方地址


3:docker安装

进入宝塔-软件商店-全部-搜索docker-安装Docker管理器-选择最新版本


4:jenkins安装

4.1宝塔面板-文件 创建 /var/jenkins_home 目录

4.2宝塔面板-终端-执行命令

docker run \

  -u root \

  -itd \

  -p 5076:8080 \         

  -p 50000:50000 \

   -v /usr/bin/docker:/usr/bin/docker \

  -v /var/jenkins_home:/var/jenkins_home \

  -v /var/run/docker.sock:/var/run/docker.sock \

jenkins/jenkins:lts  


-p 5076:8080 \       5076端口自己任意填写


5:.net core添加Dockerfile

在起始项目右键,添加docker支持,所有都默认,检查WORKDIR /app语句,确认app目录在linux存在,修改目录或者创建目录

将Dockerfile放在根目录下,并不是在某个项目下,上传到git。

如果第六步执行失败,查看控制台输出,如果提示Dockerfile不存在,则说明文件放错位置,放在sln同一级目录。


6:jenkins配置

宝塔:/var/jenkins_home/secrets initialAdminPassword 查看密码

打开ip:5076, 输入密码,安装默认插件,新建任务,源码管理选择git,配置好地址和用户名密码

构建中添加shell,输入


image_version=`date +%Y%m%d%H%M`;

echo $image_version;

# 中止以前的docker container


CID=$(docker ps | grep "test" | awk '{print $1}')

echo $CID

if [ "$CID" != "" ];then

  docker stop $CID

  docker rm $CID

fi



#docker stop test;

# 删除这个container

#docker rm test;

# build镜像而且打上tag

docker build -t test:$image_version .;

docker images;

# 把刚刚build出来的镜像跑起来

docker run -p 8066:80 --restart always --name test-d test:$image_version;

docker logs test;


点击立即构建。


查看控制台输出,如果监听的不是80端口,将上面命令8066:80 换成对应端口

浏览器打开: ip:8066



执行命令: 使jenkins自动重启

docker update --restart=always jenkins


阅读
分享

发表评论

快捷回复:

验证码

评论列表 (暂无评论,251人围观)参与讨论

还没有评论,来说两句吧...