关键词:
1 用docker compose部署服务
- 需求:假如现在我们手里有很多容器,每个容器对应每个服务,有nginx容器,redis容器,mysql容器等。现在我们需要批量化的去管理,批量启动,停止,重启等操作!当然你会说用shell,可是如何不用shell来完成需求呢,那就需要用到接下来介绍的docker compose了。
- docker compose可以方便我们快捷高效地管理容器的启动、停止、重启等操作,它类似于linux下的shell脚本,基于yaml语法,在该文件里我们可以描述应用的架构,比如用什么镜像、数据卷、网络模式、监听端口等信息。我们可以在一个compose文件中定义一个多容器的应用(比如jumpserver),然后通过该compose来启动这个应用。
- 安装compose
[[email protected] ~]# curl -L https://github.com/docker/compose/releases/download/1.17.0-rc1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose //从官方下载一个最新的compose [[email protected] ~]# chmod 755 /usr/local/bin/docker-compose //将权限设置为755 [[email protected] ~]# docker-compose version docker-compose version 1.17.0-rc1, build a0f95af docker-py version: 2.5.1 CPython version: 2.7.13 OpenSSL version: OpenSSL 1.0.1t 3 May 2016 Compose区分Version 1和Version 2(Compose 1.6.0+,Docker Engine 1.10.0+)。 Version 2支持更多的指令。Version 1没有声明版本默认是"version 1"。Version 1将来会被弃用。
定义一个docker compose 管理器
[[email protected] ~]# docker ps //查看容器的名称,后面会用到 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f98ab40c32a6 centos "bash" 10 seconds ago Up 4 seconds heuristic_torvalds c06361830af1 centos7_1 "/bin/sh -c ‘/usr/..." About a minute ago Up About a minute 0.0.0.0:8080->80/tcp root_app1_1 726da06d12c8 centos7_1 "tail -f /etc/passwd" 21 minutes ago Up 20 minutes 80/tcp root_app2_1 1101ab2618a4 centos7_1 "/bin/sh -c ‘/usr/..." 18 hours ago Up 18 hours 0.0.0.0:81->80/tcp hopeful_pasteur [[email protected] ~]# vim docker-compose.yml version: "2" services: app1: image: centos_nginx ports: - "8080:80" networks: - "net1" volumes: - /data/:/data app2: image: centos_with_nettool networks: - "net2" volumes: - /data/:/data1 entrypoint: tail -f /etc/passwd networks: net1: driver: bridge net2: driver: bridge 参数详解: version: "2" //版本为2版本 services: //相关容器或者镜像操作 app1: //app1对应的是容器1的信息,这里需要注意是要运行的容器的名称 image: centos7_1 ///images的名字 ports: //映射端口 - "8080:80" //映射宿主机8080对应容器的80端口 networks: //网络(默认是bridge模式) - "net1" //下面定义的net1(要是需要pipwork怎么办?官方不支持,就只能在写shell然后在 driver后面 定义none) volumes: //-v的参数指定 - /data/:/data //目录映射 app2: image: centos networks: - "net2" volumes: - /data/:/data1 entrypoint: tail -f /etc/passwd ///还是老问题BUG 为了不让执行后关闭,我们使用这条命令 networks: //这里就是如上net1定义的网络模式 net1: driver: bridge net2: driver: bridge [[email protected] ~]# docker-compose up -d Recreating root_app2_1 ... Recreating root_app2_1 Recreating root_app2_1 ... done [[email protected] ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9646c0a40ae1 centos "tail -f /etc/passwd" 7 minutes ago Up 7 minutes root_app2_1 f98ab40c32a6 centos "bash" 8 minutes ago Up 7 minutes heuristic_torvalds c06361830af1 centos7_1 "/bin/sh -c ‘/usr/..." 9 minutes ago Up 9 minutes 0.0.0.0:8080->80/tcp root_app1_1 1101ab2618a4 centos7_1 "/bin/sh -c ‘/usr/..." 18 hours ago Up 18 hours 0.0.0.0:81->80/tcp hopeful_pasteur [[email protected] ~]# docker-compose --help //有不会的指令及时查看命令帮助
dockercompose安装部署jenkins
流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置。本篇讲解通过DockerCompose部署Jenkins服务。流水线可以让项目发布流程更加清晰,docker可以大大减少Jenkins配置。本篇讲解通过DockerCompose部署Jenkins服务。 查看详情
docker用dockercompose部署服务(代码片段)
用dockercompose部署服务dockercompose可以方便我们快捷高效地管理容器的启动、停止、重启等操作,它类似linux下的shell脚本,基于yaml语法,在该文件里我们可以描述应用的架构,比如用什么镜像、数据卷、网络模式、监听端口等信... 查看详情
dockercompose方式部署springboot前后端分离项目
服务编排方式部署以下文件具体目录 1、构建springboot后台服务dockerfile文件,vim/usr/local/docker/soc/DockerfileFROMjdk:8MAINTAINERsinvie.cnADDScgService.jar/root/ScgService.jarENTRYPOINT["nohup","java","-jar","/root/ScgServ 查看详情
dockercompose跨主机部署consul集群/单机(代码片段)
简单明了直接开干。原理百度下 #此次部署双客户端三服务端 一、确定服务器信息有无相关端口冲突。docker服务是否存在netstat-nltp|grep-E"8300|8301|8302|8500|8600"8300:集群内数据的读写和复制8301:单个数据中心gossip协... 查看详情
dockercompose部署springboot+mysql项目(代码片段)
DockerCompose部署Springboot+Mysql项目在上一篇文章SpringBoot(Maven)+Docker打包中,我们实现了将Springboot项目源代码一键打包部署为Docker服务。上文中,我们的Springboot项目如果要与数据库的连接,就必须连接公网IP来使用&... 查看详情
dockercompose
...排部署基于docker的应用。本身与docker/swarm配合度很高。DockerCompose是Docker编排服务的一部分,可以让用户在其它平台快速安装Docker,Swarm可以让Docker容器在集群中高效运转,而Compose可以让用户在集群中部署分布式应用。简单的说... 查看详情
docker私有仓库部署之compose搭建consul集群(代码片段)
文章目录一、DockerCompose简介1.1DockerCompose概述1.2DockerCompose容器编排1.3DockerCompose常用命令1.4DockerCompose配置常用字段二、Consul简介2.1consul概述2.2Consul容器服务更新与发现三、部署Compose3.1安装docker、设置镜像加速3.2compose部署四、consu... 查看详情
dockercompose部署(代码片段)
dockercompose部署————资源控制[root@localhost~]#dockernetworklsNETWORKIDNAMEDRIVERSCOPE4946cb00240cbridgebridgelocal7ad0dfddaa0fhosthostlocal906f0be0af7cnonenulllocal#自定义网络固定IPdockernetworkcreate--subnet=172 查看详情
dockercompose部署springboot+mysql项目(代码片段)
声明:本文CSDN作者原创投稿文章,未经许可禁止任何形式的转载,原文链接在上一篇文章SpringBoot(Maven)+Docker打包中,我们实现了将Springboot项目源代码一键打包部署为Docker服务。上文中,我们的Springboot项目... 查看详情
关于docker那点事儿——dockercompose简介(代码片段)
dockercompose简介前言一、dockercompose概念二、dockercompose安装三、dockercompose常用命令四、docker-compose.yml文件详解1、文件结构2、示例:docker-compose管理微服务前言 微服务架构的应用系统一般包含若干个微服务,每个微服务... 查看详情
使用dockercompose编排微服务(代码片段)
使用DockerCompose编排微服务经过前文讲解,可使用Dockerfile(或Maven)构建镜像,然后使用docker命令操作容器,例如dockerrun、dockerkiil等。然而,使用微服务架构的应用系统一般包含若干个微服务,每个微服务一般都... 查看详情
dockercompose(项目)
DockerCompose 项目compose项目简介 compose项目来源于之前的Fig项目,使用python代码编写。compose项目主要用于编排部署基于docker的应用。本身与docker/swarm配合度很高。DockerCompose 是Docker编排服务的一部分,可... 查看详情
dockercompose项目
http://hongge.blog.51cto.com/DockerCompose项目compose项目简介compose项目来源于之前的Fig项目,使用python代码编写。compose项目主要用于编排部署基于docker的应用。本身与docker/swarm配合度很高。DockerCompose是Docker编排服务的一部分,可以让用... 查看详情
docker_day04:dockerfiledocker私有仓库dockercompose介绍dockercompose部署一件部署路飞项目(代码片段)
...程docker私有仓库镜像传到官方仓库镜像分层私有仓库搭建dockercompose介绍dockercompose部署flask+redis项目新建flask项目app.py编写Dockerfile--->>>用于构建flask项目的镜像编写docker-compose的yaml文件docker-compose.ymldocker-compose启动dockercompose... 查看详情
dockercompose(代码片段)
1、什么是dockercomposeCompose是一个定义和管理多容器的工具,使用Python语言编写。使用Compose配置文件描述多个容器应用的架构,比如使用什么镜像、数据卷、网络、映射端口等;然后一条命令管理所有服务,比如启动、停止、重... 查看详情
centos7部署dockercompose(代码片段)
...======================将原先dockerswarm的文章拆分后,我决定将dockercompose的部署内容单独整理成文章,使得部署逻辑更清晰。 dockercompose是docker容器批量编排的工具,可以通过1个yml文件创建多个docker容器,当然compose工具依赖于docke... 查看详情
dockercompose一键部署lnmp平台(代码片段)
docker-compose.ymlversion:‘3‘services:nginx:hostname:nginxbuild:context:./nginxdockerfile:Dockerfileports:-80:80links:-php:php-cgivolumes:-./wwwroot:/usr/local/nginx/htmlphp:hostname:phpbuild:./phplin 查看详情
使用dockercompose部署nexus后提示:unabletocreatedirectory/nexus-data/instance
场景UbuntuServer上使用DockerCompose部署Nexus(图文教程):https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/101111611在上面部署好Nexus后,启动后日志提示:Unabletocreatedirectory/nexus-data/instance 注:博客:https:// 查看详情