IDEA中使用Docker Compose容器编排的实现

(一)确保idea 中连接到docker

(二)打包镜像

我这里测试的是前后分离项目 如果是微服务中呢,由于前文中在pom.xml 中绑定了idea docker 打包插件 在其 父工程中使用 打包命令 即可将其子模块 打成一个个镜像

(三)Compos编排文件编写

docker compose 使用镜像编排

version: '3' #compose 文件版本(1.2.x+ 用3即可)
services:
 #指定服务名 建议还是与项目名一致 虽然其并没有什么实际性联系
 lei-server:
  #我这里是采用 镜像编排 当然也可以使用 dockerfile
  image: registry.cn-chengdu.aliyuncs.com/leileideve/cattle-web:latest
  #从起方式
  restart: always
  #端口映射
  ports:
   - 6543:6543
  #数据卷挂载
  volumes:
   - /docker/logs/server:/data/logs/
 # 指定编排服务名
 lei-web:
 	#image: 后为 需要编排的镜像 默认从本地服务器寻找 ,未找到则从dokcerhub中寻找
  image: app-fontend
  restart: always
  ports:
  - 8888:8888
  volumes:
  - /docker/logs/web:/logs

docker compose 使用dokcerfile 编排

version: '3'
services:
 # 后端springboot容器
 server:
  container_name: lei-server-haha  # 容器名为'xiao-xiao-su-api'
  restart: always           # 重启策略: 容器退出时总是重启容器
  build:
   context: ./            # 指定设定上下文根目录,然后以该目录为准寻找Dockerfile
   dockerfile: ./docker/server/Dockerfile #DockerFile 真正所在位置
  working_dir: /app          # 设置工作目录为容器内的app文件夹
  environment:
   TZ: Asia/Shanghai
  volumes:              # 挂载文件
   - ./logs/:/app/log        # 映射容器产生的日志到主机的logs文件夹
  ports:               # 映射端口
   - 7777:6543
# 前端项目
 web:
  container_name: lei-web-haha  # 容器名为'lei-web-haha'
  restart: always           # 重启策略: 容器退出时总是重启容器
  build:
   context: ./            # 指定设定上下文根目录,然后以该目录为准寻找Dockerfile
   dockerfile: ./docker/web/Dockerfile #DockerFile 真正所在位置
  environment:
   TZ: Asia/Shanghai
  ports:
   - 8899:8888           # 映射端口

使用dockerfile 和镜像编排的区别

​dockerfile 每次编排需要创建一个新镜像 然后启动容器实例

​使用images则是在原本镜像中 新启动一个容器实例

docker-compose.yml 一般都是放在项目最外层

(四)idea 中操作docker compose

未使用时 查看服务器 正在运行的容器列表

idea 中操作

运行services 其实质是执行了docker compose 命令 docker-compose up -d (当compose文件 为标准的 docker-compose.yml 时) 如不标准 则实质时 用-f 参数指定文件名 与 docker build 命令类似 (docker-compose -f dockerdemo.yml up -d)

docker compose 常用命令 以 tomcat 为例子

docker-compose up -d 容器           构建建启动容器
exmaple: docker-compose up -d tomcat     构建建启动tomcat容器
docker-compose exec tomcat bash      登录到tomcat容器中

docker-compose down               删除所有容器,镜像

docker-compose ps                  显示所有容器

docker-compose restart 容器ID          重新启动容器

docker-compose build tomcat           构建镜像 。    

docker-compose build --no-cache tomcat  不带缓存的构建。

docker-compose logs tomcat           查看tomcat的日志 

docker-compose logs -f tomcat          查看tomcat的实时日志

查看Linux虚拟机 容器信息 服务名 是默认的 docker compose 所在父项目名+ 自定义服务名+数字

访问测试

docker compose 的简单使用就结束了,后续不断补充,其知识点是非常多的

到此这篇关于IDEA中使用Docker Compose容器编排的实现的文章就介绍到这了,更多相关IDEA使用Docker Compose容器编排内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker 容器编排利器Compose(起步篇)

    一个大型的Docker组成的微服务应用中,容器的数量是非常庞大的,如果依赖传统的人工配置方式进行维护,对于开发和运维来说简直就是噩梦.Compose的出现正是为了解决这个问题. Compose简介 Compose的前身是Fig,Fig被Docker收购之后正式更名为Compose,Compose向下兼容Fig.Compose是一个用于定义和运行多容器Docker应用的工具,只需要一个Compose的配置文件和一个简单的命令就可以创建并运行应用所需的所有容器.在配置文件中,所有容器通过servic

  • IDEA中使用Docker Compose容器编排的实现

    (一)确保idea 中连接到docker (二)打包镜像 我这里测试的是前后分离项目 如果是微服务中呢,由于前文中在pom.xml 中绑定了idea docker 打包插件 在其 父工程中使用 打包命令 即可将其子模块 打成一个个镜像 (三)Compos编排文件编写 docker compose 使用镜像编排 version: '3' #compose 文件版本(1.2.x+ 用3即可) services: #指定服务名 建议还是与项目名一致 虽然其并没有什么实际性联系 lei-server:

  • Docker批量容器编排的实现

    简介 Dockerfile build run 是手动操作单个容器,假如使用微服务架构,需要启动 100 + 个容器,他们之间的依赖关系如何维护? Docker Compose 用来轻松高效地管理容器,定义运行多个容器. 三个步骤: Dockerfile Services & docker-compose.yml docker-compose up 初体验 1.Dockerfile FROM python:3.7-alpine WORKDIR /code ENV FLASK_APP app.py

  • 使用Docker Compose 实现nginx负载均衡的方法步骤

    以Docker的网络管理,容器的IP设置为基础知识实现Nginx负载均衡 查看所有docker网络 docker network ls /* NETWORK ID NAME DRIVER SCOPE b832b168ca9a bridge bridge local 373be82d3a6a composetest_default bridge local a360425082c4 host host local 154f600f0e90 none null local */ // compose

  • Docker系列之使用Docker Compose编排容器

    1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: 1.Dockerfile 定义应用的运行环境 2.docker-compose.yml 定义组成应用的各服务 3.docker-compose up 启动整个应用 2. 安装Compose 直接从github下载即可,前提要先安装Docker,版本要1.9.1以上 Note that Compose 1.8.0 requires

  • 使用Docker compose编排Laravel应用的方法

    前言 Laravel官方开发环境推荐的是Homestead(其实就是一个封装好的Vagrant box),我感觉这个比较重,于是自己用Docker compose编排了一套开发环境,在这里分享下. 环境要求 先要安装好Docker 和 Docker compose,而且Docker 仓库镜像最好换成国内的.一般地,我开发电脑上会运行一个Vagrant,然后再在里面运行Docker等应用. 主要思路 Docker官方推荐的是一个容器运行一个服务,所以会有Compose编排,各个服务间通过容器互联技

  • Docker数据卷和容器编排的使用

    前言 Docker 数据卷和容器编排,记录下来! 数据卷 数据卷可以绕过拷贝系统,在多个容器之间.容器和宿主机之间共享目录或文件,数据卷绕过了拷贝系统,可以达到本地磁盘I/O性能. 运行容器时,指定一个数据卷 $ docker run -itd --name nginx -v /usr/share/nginx/html/ -p 80:80 e445ab08b2be 此时,我们创建了一个数据卷并且挂载到容器的/usr/share/nginx/html/目录下. 使用 docker inspect

  • 详解Docker之Compose服务编排

    Compose是Docker的服务编排工具,主要用来构建基于Docker的复杂应用,Compose 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景. 说明:Compose是Fig的升级版,Fig已经不再维护.Compose向下兼容Fig,所有fig.yml只需要更名为docker-compose.yml即可被Compose使用. 服务编排工具使得Docker应用管理更为方便快捷. Compose网站:https://docs.docker.com/compos

  • Docker.v19安装和配置Docker Compose编排工具的方法

    一.Compose简介 Compose是用于定义和运行多容器Docker应用程序的工具.通过Compose,可以使用YAML文件来配置应用程序的服务.然后,使用一个命令,就可以从配置中创建并启动所有服务. Docker-Compose是一个容器编排工具.通过一个.yml或.yaml文件,将所有的容器的部署方法.文件映射.容器端口映射等情况写在一个配置文件里,执行docker-compose up命令就像执行脚本一样,一个一个的安装并部署容器. YAML文件基本语法: 大小写敏感: 使用缩进表示层

  • 详解Docker Compose 中可用的环境变量问题

    Compose 的多个部分在某种情况下处理环境变量.本教程可以帮助你找到所需的信息. 1. 替换Compose文件中的环境变量 可以使用 shell 中的环境变量填充 Compose 文件中的值: web: image: "webapp:${TAG}" 更多信息请参考 Compose 文件手册中的 Variable substitution章节. 2. 设置容器中的环境变量 可以通过 environment 关键字设置服务容器中的环境变量,就跟使用 docker run -e VARI

随机推荐