docker-compose基础知识

使用Docker Compose管理多个容器
Docker Compose是一个用来定义和运行复杂应用的Docker工具。使用Compose,你可以在一个文件中定义一个多容器应用,然后使用一条命令来启动你的应用,完成一切准备工作。

  • github.com/docker/compose
    一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose,不再需要使用shell脚本来启动容器。在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器。完整的命令列表如下:

build 构建或重建服务
help 命令帮助
kill 杀掉容器
logs 显示容器的输出内容
port 打印绑定的开放端口
ps 显示容器
pull 拉取服务镜像
restart 重启服务
rm 删除停止的容器
run 运行一个一次性命令
scale 设置服务的容器数目
start 开启服务
stop 停止服务
up 创建并启动容器
参考 https://docs.docker.com/compose/install/ 。你能运行Compose在OSX和64位Linux。当前不支持Windows操作系统。
8.1. 安装Docker Compose
curl -L https://github.com/docker/compose/releases/download/1.4.2/docker-compose-uname -s-uname -m > /usr/local/bin/docker-compose
chmod x /usr/local/bin/docker-compose

8.2. 配置文件
1.Compose的配置文件是docker-compose.yml。让我们看看下面这个文件:
mysqldb:
image: [classroom.example.com:5000/]mysql
environment:
MYSQL_DATABASE: sample
MYSQL_USER: mysql
MYSQL_PASSWORD: mysql
MYSQL_ROOT_PASSWORD: supersecret
mywildfly:
image: [classroom.example.com:5000|arungupta]/wildfly-mysql-javaee7
links:

  • mysqldb:db
    ports:
  • 8080

这个文件在 https://raw.githubusercontent. … dees/ ,它表明:
a. 定义了两个服务分别叫做mysqldb和mywildfy
b. 使用image定义每个服务的镜像名
c. MySQL容器的环境变量定义在environment
d. MySQL容器使用links和WildFly容器链接
e. 使用ports实现端口转发
8.3. 启动服务
1.如果你从互联网运行,将docker-compose-internet.yml保存为docker-compose.yml。

2.如果你使用教师给的镜像,将docker-compose-instructor.yml保存为docker-compose.yml。

3.使用下面的命令,所有的服务将使用后台模式被启动
docker-compose up -d

显示的输出如下:
Creating attendees_mysqldb_1… Creating attendees_mywildfly_1…
使用-f指定代替的compose文件。
使用-p指定代替compose文件所在的目录。

4.验证启动的服务
docker-compose ps
Name Command State Ports
attendees_mysqldb_1 /entrypoint.sh mysqld Up 3306/tcp
attendees_mywildfly_1 /opt/jboss/wildfly/customi … Up 0.0.0.0:32773->8080/tcp

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值