继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

visual studio添加docker支持简记

niunan
关注TA
已关注
手记 63
粉丝 20
获赞 97

很久以前学过一段时间的docker,那时装了电脑卡得受不了,学了一会就卸载了,最近电脑又装上了docker,感觉好像没有以前这么卡了,还是同一台电脑surface pro4, 试了一下visual studio中做的网站运行在docker上,下面是一些简记

环境:win10 + docker desktop + visual studio 2017 + mysql , 其中MYSQL是安装在c:/mysql 里的

打开visual studio 网站项目,在Niunan.Blog.Web项目上右键添加doker支持,选linux 支持, 会生成Dockerfile文件

直接点那个绿三角图标运行,结果等了好久好久,卡在那个界面上

5ce776770001618815330844.jpg

原来是docker正在下载底层的包的,会很慢很慢,可以先停掉VS。然后在cmd命令行下运行

docker pull microsoft/dotnet:2.2-aspnetcore-runtime

docker pull microsoft/dotnet:2.2-sdk


然后再点绿三角图标运行,运行成功了,弹出浏览器了,不过显示不了

5ce776780001ce6519201048.jpg


后来发现是我Program.cs代码里用了useurl了,因为之前我是做了N个网站,都部署在一台linux服务器上的,所以给每个网站都分配了一个自定义的端口的,DOCKER运行的时候又自动分配了一个32768端口,可能冲突了吧,把这一行注释掉,运行就正常了

5ce7767800014eea19201048.jpg




运行界面显示正常了,但是在连接数据库的时候又出错了

5ce776790001b9f109720859.jpg


数据库连接字符串是 localhost 的,这个在docker里连接不了的,必须得写成本地的IP地址,如192.168.0.110, 可从cmd窗口里用ipconfig查看

5ce77679000105e412450517.jpg


然后可以先在本地打开sqlyog,用192.168.0.110连接看看能不能连接上数据库,不能的话还得改那个mysql数据库里的users表里的root用户的localhost改为%, 

5ce7767a000158c715640786.jpg


然后再试就可以用192.168.0.110连接上数据库了

5ce7767a0001681806570511.jpg


改好项目里的数据库连接字符串,再运行docker项目,界面显示出来了,数据库也连接上了,yeah~~~~~~

5ce7767b000192a019201048.jpg


5ce7767b000158de19201048.jpg


5ce7767c00013ab819201048.jpg


后续计划,把本地docker那个网站的镜像导出成zip,再传到linux服务器上用docker运行,再服务器上用nginx转发绑定不同的域名,在浏览器里测试

然后配置vs插件antdeploy插件,能够直接在VS里发布镜像并自动上传到linux服务器上部署起来,再把整个流程录成视频~~~



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP