码迷,mamicode.com
首页 > 其他好文 > 详细

docker~docker-compose和VS解决方案的关系

时间:2017-07-24 17:31:20      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:style   默认   docker   程序   port   post   page   文件组   web项目   

回到目录

一般地,我们在VS里添加了一个解决方案之后,会更新模块或者业务添加多个api,web项目,这类似于最近说的微服务,而我们的docker-compose与微软件正好有了一种默契,当你为你的解决方案添加docker支持之后,你会发布有个docker-compose出现了,它会把所有可以发布的项目都集成起来,进行管理,然后可以让你一键发布你的一批镜像,这里我们叫它"服务",这个服务我们可以删除,停止,运行它,非常方便!

  1. docker-compose和VS解决方案的关系
  2. docker-compose和VS与项目的关系
  3. Dockerfile与VS项目的关系
  4. docker-compose和Dockerfile的关系

大叔对docker-compose的认识

docker-compose和VS解决方案的关系

一个解决方案对应一个docker-compose项目,它由docker-compose.yml和它的子文件组件,子文件用来对它进行补充!

docker-compose和VS与项目的关系

一个docker-compose包括了所有可以发布的项目,这些项目在compose里被称为一个服务!

Dockerfile与VS项目的关系

一个Dockerfile对应一个具体的项目,可以是网站,API,控制台程序等,主要对它们进行发布,运行等!

docker-compose和Dockerfile的关系

一个docker-compose会包括多个Dockerfile,而每个Dockerfile对应于一个镜像,也就是说,很多镜像组件了一个服务,一个docker-compose,我们可以按着自己的规则去划分服务,docker-compose最小管理单元是"服务"!

具体例子

docker-compose.yml

version: 2

services:
  coremvc1.1:
    image: coremvc1.1
    build:
      context: ./coreMvc1.1
      dockerfile: Dockerfile

  shop:
    image: shop
    build:
      context: ./Shop
      dockerfile: Dockerfile

docker-compose.override.yml对原文件进行功能的补充

version: 2

services:
  coremvc1.1:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "80"

  shop:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "80"

然后把整个解决方案发布一个,复制到你的linux环境里

技术分享

执行docker-compose build 生成服务,就是一批镜像,通过docker-compose images可以查看它们

技术分享

当生成成功后,执行docker-compose up 运行服务,就是运行这些容器,然后docker ps或者docker-compose ps 可以查看正在运行的容器

技术分享

从上面的图中可以看到,这个服务包括了两个容器,它们分别监听了81和82端口,而自己程序端口都是5000,这也是默认的!

技术分享技术分享

有时,觉得微软,vs2017为开发者考虑的太到位了,呵呵! 

感谢各位的阅读!

 回到目录

 

docker~docker-compose和VS解决方案的关系

标签:style   默认   docker   程序   port   post   page   文件组   web项目   

原文地址:http://www.cnblogs.com/lori/p/7229765.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!