首页 > 其他分享 >docker-compose 一些有用的新功能

docker-compose 一些有用的新功能

时间:2022-11-02 21:02:20浏览次数:70  
标签:profile compose docs 有用 https docker com

docker-compose 可以方便我们进行多容器环境的管理,通过也提供了一些比较有意思的功能,比如extends,以及profiles

extends 的场景

比如我们需要使用一些模版进行服务的扩展,就可以使用次能力,模版是独立的docker-compose 文件定义格式,我们可以使用对于的某一个服务的定义
然后可以改写

profiles 的场景

比如我们需要测试一个多环境,但是不同环境起不通的服务,类似spring boot 的profile 不同profile 激活不同的服务以及bean,或者配置

参考使用

集成以上几个功能的测试

  • docker-compose.yaml
 
version: '3'
services:
  app:
    extends:
     file: myapp.yaml
     service: app-web
    networks:
      - demoapp
      - appdemo
      - mydemoapp
  redis:
    image: redis
    profiles: ["redisdb"]  # profile 使用
networks:
  demoapp:
  appdemo:
  mydemoapp:

myapp.yaml 模版定义

version: '3'
services:
  app-web:
    image: openresty/openresty:1.21.4.1-3-alpine-fat
    ports:
      - 80:80
  • 启动
    默认启动docker-compose up -d 会看到不包含redis 容器,使用 docker-compose --profile redisdb up -d 可以看到redis 容器
    profle 的启动方式还有一种是基于环境变量。
    命令如下
 
docker compose --profile frontend --profile debug up -d
COMPOSE_PROFILES=frontend,debug docker compose up -d

说明

以上几个功能还是比价有用的,可以更好的进行环境部署以及可选的开启容器组件

参考资料

https://docs.docker.com/compose/
https://docs.docker.com/compose/reference/envvars/
https://docs.docker.com/compose/compose-file/
https://docs.docker.com/compose/profiles/
https://docs.docker.com/compose/extends/

标签:profile,compose,docs,有用,https,docker,com
From: https://www.cnblogs.com/rongfengliang/p/16852426.html

相关文章

  • Doker学习01-Docker的基本概念
    Doker学习01-Docker的基本概念Docker概述Docker出现的原因一款产品有两个环境:开发(开发环境)和上线(运维环境)。环境配置和切换过于麻烦,每一台机器都要部署环境(集群Redis,E......
  • Ubuntu安装Docker及镜像加速器
    一、安装Dockersudoapt-getupdate&&sudoapt-getinstall-yapt-transport-httpsca-certificatescurlsoftware-properties-common&&curl-fsSLhttps://downloa......
  • docker
    一、概念docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布......
  • docker容器设置固定IP
    创建虚拟网桥dockernetworkcreate--subnet=172.127.0.0/24docker-br0 删除网桥dockernetworkrmdocker-br0 创建容器参数如下--network指定网桥--ip指定ip......
  • docker rabbitmq安装延迟插件
    首先,已经安装有rabbitmq3.8.17    1、下载插件地址:https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/tags  2、将下载的插件上传到容器中:/p......
  • docker搭建rabbitmq镜像集群
    目录一、搭建RabbitMq的运行环境1.通过search查询rabbitmq镜像2.通过pull拉取rabbitmq的官方最新镜像3.创建容器4.启动管理页面5.设置erlangcookie二、普通模式三......
  • Docker安装sonarqube
    1、安装postgresql数据库1.1、拉取postgres镜像dockerpullpostgres 1.2、运行镜像容器dockerrun--namedb-ePOSTGRES_USER=sonar-ePOSTGRES_PASSWORD......
  • Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓
    JenkinsPipeline流水线PublishoverSSH将jar上传到远程Docker服务器、执行编译命令生成镜像、将镜像上传到阿里仓库PublishoverSSHJar包上传、编译、上传生成......
  • docker 批量删除镜像
    删除虚悬镜像列出REPOSITORY和TAG均为<none>的虚悬镜像:$dockerimages--filterdangling=trueREPOSITORYTAGIMAGEIDCREATEDSIZE<none>......
  • docker 安装(windows10家庭版)
    安装:桌面版:https://www.docker.com/products/docker-desktop服务器版:https://docs.docker.com/engine/install/#server  启动报错解决:报错截图: 解决方法:控制面......