Docker Compose的yaml文件配置

这篇具有很好参考价值的文章主要介绍了Docker Compose的yaml文件配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、第一步是确认应使用的Compose版本

(1)去看官方文档,根据给出的文档选择对应的Compose版本

https://docs.docker.com/compose/compose-file/compose-file-v3/

Compose和Docker Engine版本对比截图:

Docker Compose的yaml文件配置

(2)使用以下命令查看自己的docker engine版本

docker version

效果图:

Docker Compose的yaml文件配置

(3)由图可知我的Docker Engine版本为20.10.17,根据官方文档的版本对比表,没有对应Docker Engine 20版本的Compose版本,所以只能使用最新的Compose 3.8版本

#通过对比Compose和Docker Engine的版本,得出Compose使用3.8版本
version:'3.8'

2、第二步配置services

官方文档:https://docs.docker.com/compose/compose-file/compose-file-v3/#service-configuration-reference

#配置我们自己的服务
services:
  #服务名称
  web
    #跟docker build命令一样,根据Dockerfile创建镜像
    build:
      #表示在指定目录下找Dockerfile
      context: .
      #Dockerfile的名称
      dockerfile:
      #当前服务跑在哪个地址上
      network:host
    #容器启动时执行的命令
    command:bundle exec thin -p 3000
    #Entrypoint指令用于设定容器启动时第一个运行的命令及其参数
    entrypoint: /code/entrypoint.sh
    #指定docker容器的名称
    container_name: my-web-container
    #依赖关系:有些项目需要redis先启动,项目后启动,所以这时候需要配置依赖关系,如下配置就是让db服务先启动,然后redis服务启动,最后web服务才启动
    depends_on:
      - db
      - redis
    #配置环境变量
    environment:
    #当前服务对外暴露的端口
    expose:
      - "8080"
    #服务的镜像名称
    image:web:0.1
  #服务名称
  redis:
    #服务的镜像名称
    image: redis
  #服务名称
  db:
    #服务的镜像名称
    image: mysql

3、第三步配置其他参数(不做硬性要求)文章来源地址https://www.toymoban.com/news/detail-502588.html

    #容器数据卷挂载目录
    volumes:
      - type: volume
        #主机目录
        source: mydata
        #容器目录
        target: /data
        volume:
          nocopy: true
    #配置docker自定义网络
    networks:
     - my-network
    configs:

到了这里,关于Docker Compose的yaml文件配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 通过运行中的容器生成 Docker Compose 配置文件

    笔者之前有一次不小心删除了原始的 docker-compose.yml 文件,不过正在运行的 Docker 容器还在,找了许久,发现一个方法可以从这些容器中生成一个等效的 Docker Compose 配置文件。本文将介绍使用 autocompose 工具从正在运行的容器中反向生成 docker-compose.yml 文件。 首先,确保你已经

    2024年02月07日
    浏览(42)
  • 三、Docker:Compose安装、使用、文件结构、配置参数与命令详解

    注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料 ,将在公众号 CTO Plus 发布,请关注公众号: CTO Plus     Docker-compose 是用于定义和运行多容器 Docker 应用程序的编排工具。使用 docker-compose 后不再需要逐一创建和启动容器。可以使用YML文件来配

    2024年02月10日
    浏览(46)
  • 构建OpenStack私有云--第一步:配置Keystone服务

    keystone是一个认证服务,所有服务在接收到用户请求时,都必须找keystone服务去做认证,把用户请求中的信息拿出来去匹配,能匹配到才去检查你有没有相应的权限,然后给你资源。 还有个作用是目录列表 1. 创建keystone数据库 不过最后一行命令会抱错,这是因为当前172这个地

    2023年04月11日
    浏览(40)
  • Kubernetes配置 Pods 和容器—将 Docker Compose 文件转换为 Kubernetes 资源

    你必须拥有一个 Kubernetes 的集群,同时你必须配置 kubectl 命令行工具与你的集群通信。 建议在至少有两个不作为控制平面主机的节点的集群上运行本教程。 我们有很多种方式安装 Kompose。首选方式是从最新的 GitHub 发布页面下载二进制文件。 Kompose 通过 GitHub 安装 只需几步,

    2024年02月12日
    浏览(50)
  • 使用docker/docker-compose通过自定义的redis.conf文件启动redis 7.2.3,附上docker-compose.yml的redis配置

    目录 一.复制以及使用自定义的redis.conf文件 1.在官网拷贝对应版本的配置文件内容新建redis.conf文件进行粘贴。(推荐) 2.也可以去官网下载对应版本的redis的tar.gz包,解压后在根目录下找到redis.conf文件复制也可也可。 二.配置redis.conf文件(这里有个小坑) 1.注释掉bind 127.0.0.1

    2024年02月03日
    浏览(59)
  • 运行`docker-compose up -d xxx`报错“yaml:invalid trailing UTF-8 octet“解决方法

    运行 docker-compose up -d xxx yaml:invalid trailing UTF-8 octet 使用notepad打开 docker-compose.yml 文件,确认文件编码为UTF-8,查看文件内容,注释中存在乱码。删除乱码信息后保存,再次运行 docker-compose up -d xxx ,结果运行成功。 说明:引入此报错是由于在修改使用MobaXterm连接的服务器上的

    2024年02月12日
    浏览(365)
  • 微服务项目容器编排docker-compose.yml、Dockerfile文件模板、相关配置文件、shell脚本

    docker环境变量文件 如果定义的环境变量名与宿主机的一样,则优先宿主机上的。 部署脚本deploy.sh 批量复制文件到对应目录copy.sh

    2024年02月11日
    浏览(39)
  • 利用 yaml-cpp 开源库读写 yaml 配置文件—— yaml-cpp安装配置

    本文介绍的是如何在 C++ 开发中利用 yaml-cpp 开源库读写 yaml 配置文件。 主要参考了网上的大牛们的文章,这里只是做简单记录。 YAML语言的设计目标,就是方便人类读写,实质上是一种通用的数据串行化格式。 1)大小写敏感 2)使用缩进表示层级关系 3)缩进时不允许使用

    2023年04月15日
    浏览(75)
  • Yaml配置文件读取方法

    在日常的代码中,有一些值是配置文件中定义的,这些值可以根据用户的要求进行调整和改变。这往往会写在yaml格式的文件中。这样开放程序给用户时,就可以不必开放对应的源码,只开放yaml格式的配置文件即可。 将配置文件中的值读入程序也非常的简单。 我们先写一个简

    2024年02月11日
    浏览(51)
  • Keburnetes YAML配置文件管理

    Kubernetes 支持 YAML 和 JSON 格式管理资源对象 JSON 格式 :主要用于 api 接口之间消息的传递 YAML 格式 :用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读 YAML 语法格式 大小写敏感 使用缩进表示层级关系 不支持Tab键制表符缩进,只使用空格缩进 缩进的

    2024年02月14日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包