博主之前写的几篇文章,.net core项目如何使用jenkins,如何使用docker:
Jenkins部署.net core =>https://www.cnblogs.com/sunshine-wy/p/9860599.html
docker部署 .net core =>https://www.cnblogs.com/sunshine-wy/p/11169938.html
由于之前的文章不具备技术之间的连贯性,这里贴一下后来自动化发布中我在Jenkins中写的shell脚本。
如果是通过Jenkins+docker的方式记得在服务器上安装好docker,.net core中dockerfile文件编辑好(记得放在根目录,如果不是根目录自行修改脚本中cd的路径),脚本中bulid镜像时会根据dockerfile来创建。环境什么的准备好以后在Jenkins的shell脚本中如下书写:
#编译以及发布项目 dotnet restore dotnet build dotnet publish #打包后的进入文件夹 cd /var/lib/jenkins/workspace/webapi/bin/Debug/netcoreapp3.1/publish/ #停止正在运行的容器以及删除镜像 docker stop webapi docker rm webapi docker rmi webapi_image #重新构建镜像和容器 docker build -t webapi_image . docker run -d -p 8081:80 --name webapi webapi_image
shell脚本中注释很清晰了,先编译和发布,再cd到目录,如果是首次进行docker部署则不必要执行docker stop 和docker rm那三句命令,记得注释!如果非首次发布,则没什么问题,先清理到之前的docker容器和镜像,再重新构建。
时间关系这里仅作简要记录,如果大家在使用.net core的过程中,参照教程有不解的地方,或者Jenkins构建不成功以及docker容器构建不成功的可以在文章下留言,博主看到会第一时间回复。
以上。