实战---在Portainer中编排docker-compose.yml文件
选择要部署容器的主机上,不用事先安装配置docker-compose
官方示例文档地址,2.0版本的:https://docs.docker.com/compose/compose-file/compose-file-v2/





使用这个功能创建的docker容器,使用的容器卷是在:/var/lib/docker/volumes路径下

docker-compose.yml使用的镜像,优先查找本地,若本地有,则使用,没有则从Docker Hub上拉取,所以若想使用私有仓库的镜像,需要提前从私有仓库中把镜像给拉取到本地

如上这个只是最简单的,通过在Portainer上的stack功能编写docker-compose.yml内容,使用自定义的eureka镜像,启动一个容器。
使用docker命令查看

完整操作
先从私有仓库把镜像拉取到本地


编写docker-compose.yml文件
这里只给eureka服务映射端口
- 默认网络使用的是bridge(桥接)
- 容器的日志驱动是json-file
version: "2.0"
services:
hkd-eureka:
image: idocker.io/hkd-eureka:0.1
ports:
- "8761:8761"
volumes:
- /tmp
- /opt/hkd-cloud/hkd-eureka/logs
hkd-config:
image: idocker.io/hkd-config:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-config/logs
hkd-gateway:
image: idocker.io/hkd-gateway:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-gateway/logs
hkd-auth:
image: idocker.io/hkd-auth:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-auth/logs
hkd-user:
image: idocker.io/hkd-user:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-user/logs
hkd-portal:
image: idocker.io/hkd-portal:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-portal/logs
hkd-custom:
image: idocker.io/hkd-custom:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-custom/logs
hkd-cash:
image: idocker.io/hkd-cash:0.1
volumes:
- /tmp
- /opt/hkd-cloud/hkd-cash/logs







问题
1.有些服务是需要先启动的,也就是说有些服务是依赖其他服务的,需要做进一步的调整
想上述那样的,只有eureka和config两个启动了,其余的启动后失败了,因为他们需要往eureka注册中心注册,但是eureka注册中心正在启动中,导致没法注册
目前采取的办法是,等eureka启动后可以访问了,再把启动失败的服务手动再启动一次
暂时没想到用啥办法解决这个依赖关系
2.没有创建使用额外的网络空间,不过这个可以等服务都启动好了,再手动把服务添加到自定义的网络空间



3.假若镜像更新了,服务如何更新


实战---在Portainer中编排docker-compose.yml文件的更多相关文章
- Docker Compose YML文件配置
Docker Compose YML 默认的模板文件是 docker-compose.yml,其中定义的每个服务都必须通过 image 指令指定镜像或 build 指令(需要 Dockerfile)来 ...
- docker compose yml 文件常用字段简介
常用参数: version # 指定 compose 文件的版本 services # 定义所有的 service 信息, services 下面的第一级别的 key 既是一个 service 的名称 ...
- Istio入门实战与架构原理——使用Docker Compose搭建Service Mesh
本文将介绍如何使用Docker Compose搭建Istio.Istio号称支持多种平台(不仅仅Kubernetes).然而,官网上非基于Kubernetes的教程仿佛不是亲儿子,写得非常随便,不仅缺 ...
- docker实战——在测试中使用Docker
在之前几章中介绍的都是Docker的基础知识,了解什么是镜像,docker基本的启动流程,以及如何去运作一个容器等等. 接下来的几个章节将介绍如何在实际开发和测试过程中使用docker. 将Docke ...
- Docker Compose模板文件介绍
模板文件是使用 Compose 的核心,涉及到的指令关键字也比较多,这里面大部分指令跟 docker run 相关参数的含义都是类似的.默认的模板文件名称为 docker-compose.yml ,格 ...
- Docker Compose 模板文件 V2
模板文件是使用Compose的核心,默认模板文件名称为docker-compose.yml ,格式为YAML格式. 目录结构 [root@localhost ~]# tree /opt/compose ...
- Docker Compose yml
Wordpress + Mysql version: '3' services: db: image: mysql:latest volumes: - db_data:/var/lib/mysql e ...
- Docker Compose集成式应用组合及service编排
Compose简介 Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.其代码目前在 https://github.com/docker/compose 开源.C ...
- asp.net core容器&mysql容器network互联 & docker compose方式编排启动多个容器
文章简介 asp.net core webapi容器与Mysql容器互联(network方式) docker compose方式编排启动多个容器 asp.net core webapi容器与Mysql ...
随机推荐
- VS无线振弦采集仪的常见问题
1 无法开机( 1)检查电源连接是否正确,电压范围应为 DC10~24V,输出能力不低于 2A, 正负极连接正确.若电池极性接反,即便未进行过开机操作也会导致设备永久性损坏.( 2)若使用电池供电,则 ...
- 02 MySQL_数据库相关的SQL
数据库相关的SQL 1. 查看所有数据库 show databases; 2. 创建数据库 格式:create database 数据库名称: 示例: create database db1; 3. ...
- 什么新东西值得学「GitHub 热点速览 v.22.29」
上周 18k+ 的项目 bun 这周又获得 7k+ star,是时候了解下它背后的编程语言 zig 了,它并不是一门新的语言,伴随着 bun 的风靡,zig 本周也上了 GitHub 热榜.同样,可以 ...
- 「一本通 1.1 例 4」加工生产调度(贪心算法)(luogu P1248)题解
加工生产调度 题目描述 某工厂收到了 n n n 个产品的订单,这 n n n 个产品分别在 A.B 两个车间加工,并且必须先在 A 车间加工后才可以到 B 车间加工. 某个产品 i i i 在 A. ...
- Thread类的常用方法_获取线程名称的方法和Thread类的常用方法_设置线程名称的方法
构造方法: public Thread();分配一个新的线程对象 public Thread(String name);分配一个指定名字的新的线程对象 public Thread(Runnable t ...
- C++ 弹幕游戏
可能会持续更新吧,, 我们说一下固定弹,直线轨迹的做法 . 首先放一个 Kaguya 的波粒: 境符「波与粒的境界」 since C++98,系统要求 Windows . #include <c ...
- 如何记录分析你的炼丹流程—可视化神器Wandb使用笔记【1】
本节主要记录使用wandb记录训练曲线以及上传一些格式的数据将其展示在wandb中以便分析的方法,略过注册安装部分(可使用pip intall wandb安装,注册相关issue可上网搜索),文章着重 ...
- Spring 常见面试题总结 | JavaGuide
首发于 JavaGuide 在线网站:Spring 常见面试题总结 最近在对 JavaGuide 的内容进行重构完善,同步一下最新更新,希望能够帮助你. Spring 基础 什么是 Spring 框架 ...
- Apache DolphinScheduler 1.2.0 task 任务存储结构说明
本文章经授权转载 Table of Contents 任务总体存储 Shell节点 SQL节点 存储过程节点 SPARK节点 MapReduce(MR)节点 Python节点 Flink节点 HTTP ...
- js--自定义对象
1.直接量对象(JSON) {"name":"zhangsan","age":25} {}代表一个对象,包含多组键值对. 通常key是字符串 ...