当前位置: 首页 > news >正文

docker学习笔记(五)--docker-compose

文章目录

  • 常用命令
  • docker-compose是什么
  • yml配置指令详解
    • version
    • services
    • image
    • build
    • command
    • ports
    • volumes
    • depends_on
  • docker-compose.yml文件编写

常用命令

命令说明
docker-compose up启动所有docker-compose服务,通常加上-d选项,让其运行在后台
docker-compose down停止并删除容器、网络
docker-compose start启动服务
docker-compose stop停止服务
docker-comopse restart重启服务

docker-compose是什么

可以管理多个docker容器组成一个应用,需要定义一个YAML格式的配置文件docker-compose.yml写好多个容器之间的调用关系,然后一个命令,就能同时启动或停止这些容器

yml配置指令详解

version

在文件的顶部,需要指定docker-compose的版本。这个版本应该与你安装的docker-compose版本兼容。例如version: '3.8'

services

定义了一组服务,每个服务将在一个容器中运行。

image

指定服务使用的Docker镜像。可以是公共镜像,也可以是私有镜像。例如image: nginx:latest

build

指定构建服务的Dockerfile所在的上下文路径,例如build: ./web

version: "3.7"
services:webapp:build: ./web

command

覆盖容器启动后默认执行的命令。

ports

映射容器端口到宿主机的指令。格式为<宿主机端口>:<容器端口>。

volumes

进行数据卷的挂载

depends_on

指定服务之间的依赖关系,确保依赖服务先启动。

docker-compose.yml文件编写

services:web:image: nginx:latest     #指定 web 服务使用的镜像是 nginx:latest,即最新的官方 Nginx 镜像。ports:- "80:80"volumes:- /root/website/nginx.conf:/etc/nginx/nginx.conf      #进行数据卷的简单挂载- /root/website/web-root:/usr/share/nginx/html- /root/website/web-logs:/var/log/nginxdepends_on:       #指定 web 服务依赖于 db 服务,这意味着在启动 web 服务之前,Docker Compose 会先启动 db 服务。- dbnetworks:- blognetworkdb:build: .       #指定 db 服务使用当前目录下的 Dockerfile 来构建镜像。volumes:       #定义数据卷,进行具名挂载- db-data:/var/lib/mysql- db-config:/etc/mysql- db-logs:/var/log/mysqlports:         #进行端口映射- "3306:3306"networks:     #db 服务连接到 blognetwork 网络。- blognetwork
volumes:db-data:db-config:db-logs:
networks:       blognetwork:driver: bridge

使用命令docker-compose up -d看到两个容器成功运行
在这里插入图片描述

http://www.lryc.cn/news/498523.html

相关文章:

  • 电子商务人工智能指南 4/6 - 内容理解
  • Hadoop3集群实战:从零开始的搭建之旅
  • Kotlin设计模式之桥接模式
  • 详解组合模式
  • 【系统架构设计师论文】云上自动化运维及其应用
  • 交换排序----快速排序
  • ES 与 MySQL 在较大数据量下查询性能对比
  • C# 新语法中的字符串内插$和{}符号用法详解
  • Nacos源码学习-本地环境搭建
  • windows 好工具
  • 计算机运行时提示错误弹窗“由于找不到 quazip.dll,无法继续执行代码。”是什么原因?“quazip.dll文件缺失”要怎么解决?
  • 创造未来:The Sandbox 创作者训练营如何赋能全球创造者
  • R语言对简·奥斯汀作品中人物对话的情感分析
  • 股指期货基差为正数,这是啥意思?
  • 黑马程序员MybatisPlus/Docker相关内容
  • 使用 Vue 和 Canvas-Confetti 实现烟花动画特效
  • 【银河麒麟操作系统真实案例分享】内存黑洞导致服务器卡死分析全过程
  • 如何加强游戏安全,防止定制外挂影响游戏公平性
  • SpringBoot整合knife4j,以及会遇到的一些bug
  • 城电科技|光伏廊道是什么?安装光伏廊道有什么好处?
  • 当DHCP服务器分配了同一个IP地址
  • 储能能量自动化调配装置功能介绍
  • vite5+vue3+Ts5 开源图片预览器上线
  • 【深度学习】深入解析长短期记忆网络(LSTMs)
  • 从Web3到智能合约:探索新一代数据交互模式
  • 排查bug的通用思路
  • 如何利用Python爬虫获得商品类目
  • 如何通过 Windows 自带的启动管理功能优化电脑启动程序
  • 大模型学习有什么发展前景?
  • Excel技巧:如何批量调整excel表格中的图片?