Docker之10 Docker Compose
什么是Docker Compose
Compose是一个用于定义和运行多容器Docker应用程序的工具。Docker Compose可以使用YAML文件来配置应用程序的服务,接着就可以从配置中创建并启动所有服务。
如何配置Docker Compose
很简单,将docker-compose在github下载下来赋予执行权限即可运行。
curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
Docker Compose 管理命令
查看容器列表
docker-compose ps
查看服务日志
docker-compose log
打印绑定端口
docker-compose port
构建服务
docker-compose build
启动已存在的容器服务
docker-compose start
停止已运行的容器服务
docker-compose stop
删除服务容器
dokcer-compose rm
构建或启动容器
docker-compose up
停止服务容器
docker-compose kill
下载服务镜像
docker-compose pull
设置服务运行的容器数量
docker-compose scale
在服务器上运行命令
docker-compose run
Docker Compose Yaml File
指令格式
version:指定 docker-compose.yml 文件的写法格式 services:多个容器集合 environment:环境变量配置,可以用数组或字典两种方式 restart:容器在关闭后是否重启 depends_on:定义服务依赖关系 image:指定服务所使用的镜像 network_mode:设置网络模式 ports:对外暴露的端口定义,和 expose 对应 volumes:卷挂载路径
一个完整的WordPress例子
version: '3.3' services: db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: somewordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest ports: - "8000:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data: {}
docker-compose up -d docker-compose ps
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
K8S client-go Patch example
使用Patch方式更新K8S的 API Objects 一共有三种方式:strategic merge patch, json-patch,json merge patch。关于这三种方式的文字描述区别可看官方文档update-api-object-kubectl-patch。 我在本文中主要会介绍使用client-go的Patch方式,主要包括strategic merge patch和json-patch。不介绍json merge patch的原因,是该方式使用场景比较少,因此不做介绍,如果有同学有兴趣,可做补充。 StrategicMergePatch 新增Object值 本次示例以给一个node新增一个labels为例,直接上代码: //根据Pod Sn 更新 pod func UpdatePodByPodSn(coreV1 v1.CoreV1Interface, podSn string, patchData map[string]interface{}) (*apiv1.Pod, error) { v1Pod, err := coreV1.Pods("").Get(pod...
- 下一篇
一种高效自动化ECS实例数据盘挂载和格式化方式
默认情况下创建的 ECS 实例只有一个40G 的高效云盘系统盘,通过任何形式(控制台、ECS SDK 等) 方式创建的实例,如果需要使用数据盘,必须先进行额外的格式化数据盘工作。 如果需要批量创建大量的有特定格式化需求数据盘的 ECS 实例,那么单独为每一台实例格式化数据盘肯定是一件浪费运维资源的工作。所以,这里介绍一种比较简单的 ECS 实例数据盘自动挂载和格式化的方式,也许有更好的方法,请各位大神拍砖。 背景 阿里云 ECS 实例对数据盘的使用,由于涉及到用户自己的业务逻辑,对盘的数目、分区方式、文件系统要求等都不尽相同,所以 ECS 服务提供了自主的方式,将数据盘的格式化工作全部交托给用户自行处理,这样就导致了用户需要进行一步的运维工作,才能对数据盘进行正常的使用。如果用户需要创建批量的实例,那么对这些实例分别进行数据盘的初始化操
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- CentOS8安装Docker,最新的服务器搭配容器使用
- 设置Eclipse缩进为4个空格,增强代码规范
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7安装Docker,走上虚拟化容器引擎之路