博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker(8)-Docker Compose
阅读量:5323 次
发布时间:2019-06-14

本文共 1420 字,大约阅读时间需要 4 分钟。

    对于大多数的工作,我们都需要多个容器之间的相互配合。幸运的是,Docker提供给了我们一个巧妙的工具--Docker Compose,让我们能够无缝地建立和管理多个容器。

    要安装Docker Compose,我们需要先确保已经安装了pip(一个Python包管理器)。命令如下:

sudo apt-get updatesudo apt-get install -y python-pipsudo pip-install docker-compose

    Docker Compose使用一个名为docker-compose.yml的YAML文件来定义应用程序的服务,使得这些服务能够一起运行在一个独立的环境中。需要注意的是,Docker Compose在目录的基础上工作,所以如果你想在一台设备上运行多个容器组,那么每个容器组都需要一个单独的目录,而且每个目录都需要一个docker-compose.yml文件。

    为了更好地理解如何使用Docker Compose,让我们先来看看如何使用这个工具运行一个单独的容器:

      1. 创建一个目录

mkdir HelloWorld

      2. 进入目录里并创建一个包含如下内容的docker-compose.yml文件:

hellocontainer:   image: hello-world

      第一行指定容器的名字,第二行指定了容器将基于的镜像。

      3. 在目录里运行如下命令来启动容器:

docker-compose up

      我们可以看到终端上显示出了"Hello from Docker!"

 

    接下来让我们使用Docker Compose运行一个由多个容器组成的wordpress应用:

      1. 创建wordpress目录:

mkdir wordpress

      2. 在目录里创建一个包含如下内容的docker-compose.yml文件:

wordpress:  image: wordpress  links:    - database:mysql  ports:    - 8080:80database:  image: mariadb  environment:    MYSQL_ROOT_PASSWORD: supersecretpass

      上面,我们指定了两个容器,wordpress与database。image关键字指定了容器将基于的镜像;links关键字关联了两个容器;ports关键字映射了主机的8080端口到容器的80端口;environment关键字设置容器中的环境变量,在这里我们将mysql root用户密码设置为了"supersecretpass"。

      3. 执行docker-compose up

    在主机上打开浏览器并在地址栏输入http://localhost:8080,我们就会看到wordpress的安装页面了^^

    如果我们想以daemon形式启动容器组,可以执行docker-compose up -d命令。

 

    Note:

  • docker-compose up – 启动容器组
  • docker-compose stop – 停止容器组
  • docker-compose ps – 列出所有容器组,无论是否它们正在运行
  • docker-compose kill – 强制停止一个容器组

 

转载于:https://www.cnblogs.com/ZachZhou/p/7538347.html

你可能感兴趣的文章
转:Can not issue data manipulation statements with executeQuery()错误解决
查看>>
详解C#委托,事件与回调函数(转)
查看>>
744. Find Smallest Letter Greater Than Target
查看>>
java实现二维码的生成.
查看>>
Android 发展思路
查看>>
Pythonic
查看>>
contentprovider的学习实例总结
查看>>
Sharepoint 自定义字段
查看>>
TQ2440之中断
查看>>
MySQL 触发器简单实例
查看>>
codeforces 712A. Memory and Crow
查看>>
Latex Undefined control sequence. ...\bm
查看>>
MySQL------报错Access denied for user 'root'@'localhost' (using password:NO)解决方法
查看>>
车牌识别LPR(三)-- LPR系统整体结构
查看>>
log4j异常:WARN No appenders could be found for logger
查看>>
新手村之顺序与分支
查看>>
4.秋招复习简单整理之java支持多继承吗?
查看>>
BZOJ2002: [Hnoi2010]Bounce 弹飞绵羊(LCT)
查看>>
Linux分区问题
查看>>
封装的ajax
查看>>