理论上来说,宇宙第一无敌IDE VS自动生成的DockerFile是可以实现镜像的Build的,但是,在多项目工程里,会出现意想不到的not found问题:编译器CS0246等问题。多项目工程是必须的,好的项目必定是层次分明,那么我们应该怎么解决这个问题呢 ?
首先,不要慌!
如果你的DockerFile是VS2022启动Docker支持自动生成的,那么且听我慢慢道来。
DockerFile作为一个既方便又快捷的好东西,其实技术含量还是蛮高的,一套go的指令就能让人头昏目眩。还好万能的微软粑粑贴心的给外行小白白提供了一条龙服务。但是,毕竟是从一个系统到另一个系统,然后到各种系统的Build,这个路径就一定要整的明明白白的,那么就不得不说Copy这个指令了。没错,这篇文章要说的问题就是这个指令的问题。
。。。突然不想写了,我就说下解决办法吧
多项目工程如果你生成的DockerFile找不到子项目的路径,那么你可以这么试试:
1,保证DockerFile文件与sln文件同级别。我的测试工程层级是这样的:
2,调整所有的项目位置,做好引用同级,删除DickerFile文件,然后重新支持Docker,生成新的DockerFile.
PS:一开始建立工程的时候不要选:【将解决方案和项目放在同一目录中】,不然多项目
工程里面,你会被dockerfile整死。



