【云原生 | Docker篇】深入Docker Compose(六)(上)

简介: 【云原生 | Docker篇】深入Docker Compose(六)(上)

深入Docker Compose


一、Compose 简介



Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。


Compose 使用的三个步骤:


使用 Dockerfile 定义应用程序的环境。


使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。


最后,执行 docker-compose up 命令来启动并运行整个应用程序。


二、yaml语法



如果你还不了解 YML 文件配置,可以先阅读 YAML 入门教程。


docker-compose.yml 的配置案例如下(配置参数参考下文):


{
    "name":"bigdata",
    "url":" http://www.lansonli.com",
    "page":88,
    "address":{
        "street":"科兴科技园",
        "city":"深圳市南山区",
        "country":"中国"
    },
    "links":[
        {
            "name":"Google",
            "url":" http://www.google.com"
        },
        {
            "name":"Baidu",
            "url":" http://www.baidu.com"
        }
    ]
}


以上JSON转为Yaml为


# 这是 yaml 注释
# key: value 基本键值对写法 ; yaml 使用缩进控制层次。
name: bigdata
url: 'http://www.lansonli.com'
page: 88
address:
  street: 科兴科技园
  city: 深圳市南山区
  country: 中国
links:
- name: Google
    url: 'http://www.google.com'
  - name: Baidu
    url: 'http://www.baidu.com'


三、compose安装



安装 Docker Compose 可以通过下面命令自动下载适应版本的 Compose,并为安装脚本添加执行权限


sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

image.png

sudo chmod +x /usr/local/bin/docker-compose

查看安装是否成功

docker-compose -v

image.png


四、compose常见命令



ps:列出所有运行容器


docker-compose ps


logs:查看服务日志输出


docker-compose logs


port:打印绑定的公共端口,下面命令可以输出 eureka 服务 8761 端口所绑定的公共端口


docker-compose port eureka 8761


build:构建或者重新构建服务


docker-compose build


start:启动指定服务已存在的容器


docker-compose start eureka


stop:停止已运行的服务的容器


docker-compose stop eureka


rm:删除指定服务的容器


docker-compose rm eureka


up:构建、启动容器


docker-compose up


kill:通过发送 SIGKILL 信号来停止指定服务的容器


docker-compose kill eureka


pull:下载服务镜像


scale:设置指定服务运气容器的个数,以 service=num 形式指定


docker-compose scale user=3 movie=3


run:在一个服务上执行一个命令


docker-compose run web bash


目录
相关文章
|
6天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
28 2
|
4天前
|
运维 Cloud Native 虚拟化
一文吃透云原生 Docker 容器,建议收藏!
本文深入解析云原生Docker容器技术,涵盖容器与Docker的概念、优势、架构设计及应用场景等,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
一文吃透云原生 Docker 容器,建议收藏!
|
12天前
|
关系型数据库 MySQL API
|
25天前
|
缓存 监控 持续交付
|
8天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
8天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
19 1
|
20天前
|
负载均衡 监控 开发者
深入浅出:掌握 Docker Compose 的高级用法
【10月更文挑战第22天】本文深入探讨了 Docker Compose 的高级用法,包括环境变量、服务扩展、网络配置和数据卷管理。通过实例详细介绍了如何利用这些功能提升开发效率和应用部署的灵活性。适合希望深入了解 Docker Compose 的开发者阅读。
|
21天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
33 3
|
27天前
|
Kubernetes Cloud Native 开发者
探秘云原生计算:Kubernetes与Docker的协同进化
在这个快节奏的数字时代,云原生技术以其灵活性和可扩展性成为了开发者们的新宠。本文将带你深入了解Kubernetes和Docker如何共同塑造现代云计算的架构,以及它们如何帮助企业构建更加敏捷和高效的IT基础设施。
|
8天前
|
NoSQL Redis Docker
【赵渝强老师】使用Docker Compose管理容器
Docker Compose 通过 YAML 文件管理多个容器,简化复杂系统的部署和管理。本文介绍了 Docker Compose 的基本概念,并通过一个包含 Redis DB 和 Python Web 模块的示例,展示了如何使用 Docker Compose 部署和管理多容器应用。手动部署和 Docker Compose 部署的对比突显了 Docker Compose 在系统复杂度增加时的优势。