Visual Studio容器项目工程化心得

 

引言  

  关注博主的网友会看到我使用

. ├── container │   ├── app │       ├── publish │       ├── Dockerfile │   ├── nginx │       ├── Dockerfile │       ├── nginx.conf │   └── docker-compose.yml ├── .dockerignore ├── Eqid-Manager.sln ├── .git ├── .gitattributes ├── .gitignore ├── NuGet.Config ├── src │   ├── EqidManager │       ├── Property │          ├── PublishProfiles │              ── FolderPublish.pubxml  └── test     ├── EqidManager.Test
复制代码
需要理解几点:

① 建立container文件夹

  该专门存放容器化部署相关的文件, 将开发内容和部署内容分开是一种DevOps实践, 同时也为我们以后实现CI/CD做些许铺垫。

  小技巧:  在使用Visual Studio的时候,可建立与以上文件件同名的解决方案文件夹, 这样便于开发人员编写部署脚本。

 

② 编写git ignore 文件

  网上很多大牛分享过git的操作技巧,add, commit, push, checkout、merge 相信很多开发人员烂熟如心。

但是作为企业级工程,多少会涉及一些不需要代码仓库管理的文件(密钥文件、临时文件、 本地数据库文件、 日志文件), 这就涉及git ignore的用法,更丰富的官方文档在这里: https://git-scm.com/docs/gitignore

这个操作很多时候是由架构师一次性配置完成, 很多开发同学没有实操过, 今天我们也来玩弄一下。

复制代码
// 在解决方案.sln 同级目录下编写的.gitignore文件:忽略vs user file,nuget package,temp files  *.suo *.user packages .vs .nuget container/app/publish/* 
复制代码
复制代码
//  在EqidManager项目文件夹下编写.gitignore文件:忽略localdb,logs,temp files *.suo *.user bin obj internal-nlog.txt EqidManager.db healthchecksdb
复制代码

 

③  编写WebDeploy Publish Profile

  container文件夹中包含app和nginx的镜像准备文件和对应的Dockerfile,这里我们关注 app/publish文件夹, 里面将会存放本次应用程序的最终可执行文件。

使用WebDeploy部署的时候 ,在该路径生成部署文件,便于统一管理, 产生的FolderPublish.pubxml 如下:

关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信