docker compose-语法

编写一个docker compose yaml文件:

具体compose yaml文件语法参考docker官网:

docker官网:https://www.docker.com

顶级元素配置一般学会前四个即可,configs-配置和secrets-秘钥用的少

顶级元素用法简单介绍:

首先在yaml文件定义这些顶级元素,一般学会前四个即可

name:名字。应用部署的名字

services:服务。要部署的服务,即要启动的一个个容器应用,不一定是就一个

networks:网络。启动这些应用要用的网络

volumes:卷。services中启动的一个个容器应用所需要的卷写在这个位置

具体写一个compose yaml文件,例子wordpress:

1.创建一个compose.yaml文件。可以创建一个叫compose.txt文件,然后改下后缀名即可

2.对照docker compose官网语法,编写composeyaml文件

使用文本工具打开compose.yaml文件,可以用文本文档,或者其他比如idea、vscode啥的都行

name:compose本次部署的应用名称

services:本次部署的应用需要启动2个容器应用,一个是docker容器mysql,另外一个是wordpress容器,所以写俩services,services内部写应用的名称(应用的名称和容器的名称可以不一致)+启动容器所需要的配置项(如在用命令启动容器时需要端口、环境变量、镜像等都写在配置项中),service服务即启动的应用名称或者service内部配置项中的container_name容器名称可以随意配置,可直接叫mysql、wordpress,也可叫mysqlhh,wordpresshh(个人听视频理解是这样)

service-mysql容器配置:

services内部image配置项写法:

services内部ports端口配置项写法:

一个容器应用要暴露的端口可能不止一个,所以ports是数组形式,一个-小短线代表一个端口映射,想再暴露其他的继续加小短线,跟nacos语法一样

service内部environment环境变量,-e配置项写法:

service内部volumes卷映射写法:

因为一个docker容器应用可能有很多卷映射或目录挂载,所以是数组写法,小短线形式

services内部restart开机自启写法:

service内部networks网络写法:

一个service即docker容器应用可以加入多个网络,所以是数组写法,小短线形式

service内部的container_name容器名称写法:

service-wordpress容器写法:

service内部的depends on写法:

wordpress启动需要依赖mysql先启动

使用compose yaml文件:

1.在linux云服务器上创建compose.yaml文件(也可以创建别的名称的yaml文件,因为实际会用-f参数指定文件,所以叫啥名都行)

在linux云服务器上vim compose.yaml即创建compose.yaml文件,输入i进入插入模式,将本地电脑编写的compose.yaml文件内容复制到该文件中,并最后输入:wq保存退出,ls查询是否创建成功compose.yaml文件

2.删除之前创建的容器、卷、网络

3.使用docker compose命令批量启动容器,并在浏览器访问启动的容器

可能没怎么听懂。

相关推荐
Lsetea9 小时前
curl指定CA目录仍报证书不受信任:--capath与OpenSSL rehash排查
运维·https·ssl·openssl·curl
优化Henry10 小时前
LTE 载波频率与频点配置详解
运维·网络·学习·5g·信息与通信
程序员清风10 小时前
Docker、Nginx 与 Kubernetes 部署 AI 后端服务
nginx·docker·kubernetes
代码方舟10 小时前
数据科学风控实战:基于天远全能消金报告构建自动化信用评估网关
运维·人工智能·自动化
科力锐品牌君11 小时前
应用级灾备 | 海量非结构化数据如何实现高效数据保护
linux·运维·网络·安全·系统安全·数据安全·灾备
KaiwuDB11 小时前
KaiwuDB 运维实战04:DRBD + KaiwuDB——物联网场景下的低成本数据库高可用方案
运维·数据库·物联网·时序数据库·kaiwudb·aiot·多模数据库
Zhu75811 小时前
离线二进制部署-Kubernetes-v1.36.4
容器·贪心算法·kubernetes
福建佰胜张工11 小时前
A5E00839230西门子工业核心配件详解:参数、安装调试与故障运维全攻略
运维·网络·安全·自动化
Lancker12 小时前
chnroute-linux — 中国大陆 IP 段每日自动更新 + 「仅允许国内访问」落地
linux·运维·tcp/ip
谢亮_vipxieliang12 小时前
镜像安全:扫描、签名与软件供应链
安全·docker