u010200767 2018-05-17 17:38 采纳率: 0%
浏览 747
已采纳

dockerfile的问题!!!

我clone的angular项目里有个dockerfile和docker-compose,我想问下这个项目的dockerfile是构件一个docker镜像,这个镜像的作用就是,
如果我当前机器里没有一些不要的环境,比如nodejs,我运行这个镜像的容器后我还是可以运行这个项目对吗?

  • 写回答

2条回答 默认 最新

  • qq_42052466 2018-05-18 00:36
    关注

    我所理解的docker-compose是编排容器的。例如,你有一个php镜像,一个mysql镜像,一个nginx镜像。如果没有docker-compose,那么每次启动的时候,你需要敲各个容器的启动参数,环境变量,容器命名,指定不同容器的链接参数等等一系列的操作,相当繁琐。而用了docker-composer之后,你就可以把这些命令一次性写在docker-composer.yml文件中,以后每次启动这一整个环境(含3个容器)的时候,你只要敲一个docker-composer up命令就ok了。所以说,只要你在docker-compose中有有所需要的环境代码,就可以在机器里运行这个项目

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • ZhihengTao 2018-05-18 02:36
    关注

    你需要理解清楚几个关键的概念:
    1. (docker)镜像
    2. (docker)容器

    镜像

    软件及其**所有**依赖按照某种协议进行打包后得到的压缩文件, 此镜像文件可以在任何支持容器的主机中运行,并且应该具有相同的运行表现.
    可以类比虚拟机的镜像文件.

    容器

    依据一个容器镜像文件,构建一个具有一定隔离的独立轻量的运行环境, 并在此环境中执行镜像内的软件. 可以类比运行的虚拟机实例.

    然后再说dockerfile, docker-compose

    dockerfile

    定义了一系列构建容器镜像规则的文件, 即依据此文件可以生成一个镜像. 这个镜像可以用来运行容器.

    docker-compose

    容器编排工具. 一台(或多台)主机上可以运行很多很多容器,他们一般需要协同工作.所以其网络端口,挂载的主机文件等都需要配置,
    容器运行中可能需要从一台主机迁移到另一台主机.
    容器编排工具即是用来简化容器配置和容器调度的.

    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥65 页面调接口时加载卡住不响应
  • ¥35 用C语言解决编程问题
  • ¥15 unity硬件连接与使用
  • ¥15 鱼缸加热棒的数据分析或者实际案例也行
  • ¥15 postgresql11安装完成后,pgadmin无法启动
  • ¥15 (标签-无人机|关键词-Matlab代码)
  • ¥15 执行shell脚本提示参数太多
  • ¥15 困扰好久了,电脑的串口调试助手向单片机发送一个字符(如:字符‘1’到‘8’),单片机点亮对应的灯(如发送字符‘2’则点亮第2个灯)并给电脑回复信息:已点亮第x个灯(其中 x 要替换成对应的数字)
  • ¥15 求减少这个c++程序内存的解决方案
  • ¥30 改正代码,错误比较多