【Docker】04:Docker-Compose

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。【Docker】04:Docker-Compose,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

1.CentOS7安装DockerCompose

1.1.下载

Linux下需要通过命令下载:

# 安装
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

如果下载速度较慢,或者下载失败,可以使用课前资料提供的docker-compose文件:
上传到/usr/local/bin/目录也可以。
在这里插入图片描述

1.2.修改文件权限

修改文件可执行权限:

# 修改权限
chmod +x /usr/local/bin/docker-compose

1.3.Base自动补全命令:

# 补全命令
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

如果这里出现错误,需要修改自己的hosts文件:

echo "199.232.68.133 raw.githubusercontent.com" >> /etc/hosts

在这里插入图片描述

2.Docker-Compose

Docker Compose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器!

2.1.初识DockerCompose

Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。格式如下:

version: "3"
services:
  redis:
    image: redis:5.0.14
    container_name: redis
    environment: 
      - TZ=Asia/Shanghai
    privileged: true # 拥有容器内命令执行的权限
    ports: # 容器对外暴露端口
      - 6379:6379
    volumes: # 挂载数据卷
      - "/tmp/redis/data:/data"
    command: redis-server /etc/redis/redis.conf
  javaweb:
    build: .
    container_name: javaweb_compose
    ports:
      - "8090:8090"

上面的Compose文件就描述一个项目,其中包含两个容器:

  • mysql:一个基于redis:5.0.14镜像构建的容器,并且挂载了数据目录
  • javaweb:一个基于docker build临时构建的镜像容器,映射端口时8090
    在这里插入图片描述
    执行docker-compose -f compose-dome.yaml up -d运行:
    在这里插入图片描述

执行docker-compose -f compose-dome.yaml down停止:

在这里插入图片描述

DockerCompose的详细语法参考官网:https://docs.docker.com/compose/compose-file/
其实DockerCompose文件可以看做是将多个docker run命令写到一个文件,只是语法稍有差异。

上一篇:【Docker】03:Dockerfile自定义镜像
下一篇:【Docker】05:Docker私有镜像仓库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/194667.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!