如何运行docker-compose,将所有服务链接到另一个容器ubuntu

时间:2018-04-09 09:09:49

标签: docker docker-compose

我对Docker有疑问,我有很多容器,如:

  • nginx的
  • PHP-FPM
  • MySQL的
  • 的NodeJS
  • 作曲家
  • ...

我想通过Docker Compose在Windows 10上使用“Docker for Windows”应用程序设置它们,但是我想把它们放到另一个容器中,例如“Ubuntu 16.04”。那我怎么能这样做呢?

非常感谢,伙计们!

3 个答案:

答案 0 :(得分:0)

为此,请创建一个基于" Ubuntu"的Dockerfile。手动映像和设置所有这些,就像你在"普通"上安装它们一样。机。

但这是违背目的的,为什么docker是为了创建的。图像,或者更具体地说,基于图像的容器,是用于处理一种特定服务的专用虚拟机 - 搜索"微服务"术语

答案 1 :(得分:0)

您应该使用docker-compose来创建和管理多个服务。理想情况下,每个组件都有一个容器nginx,php-fpm,node,mysql。容器可以通过网络相互链接和访问。

答案 2 :(得分:0)

您可以创建多个dockerfiles,例如nodejs的另一个用于角度,另一个用于数据库,然后您可以通过创建一个docker-compose文件链接所有dockerfiles:

version: '2' # specify docker-compose version

# Define the services/containers to be run
services:
  angular: # name of the first service
   build: gamification-frontend # specify the directory of the Dockerfile
    ports:
    - "4200:4200" # specify port forwarding

  express: #name of the second service
    build: gamification-backend # specify the directory of the Dockerfile
    ports:
      - "3000:3000" #specify ports forwarding
    links:
      - database # link this service to the database service

  database: # name of the third service
    image: redis # specify an image to build container from

所以这些是三个不同的容器 1.角度2.表达3.数据库 这些是联系在一起的。要运行这些容器,请使用:

docker-compose up --build