网站开发项目建设规范,广州企业网站制作,wordpress上传第二部,做外链网站docker-compose
dockerfile模板文件可以定义一个独立的应用容器#xff0c;如果需要多个容器就需要服务编排。服务编排有很多技术方案 docker-compose开源的项目实现对容器集群的快速编排 docker-compose将所管理的容器分为三层#xff0c;分别为工程#xff0c;服务#…docker-compose
dockerfile模板文件可以定义一个独立的应用容器如果需要多个容器就需要服务编排。服务编排有很多技术方案 docker-compose开源的项目实现对容器集群的快速编排 docker-compose将所管理的容器分为三层分别为工程服务以及容器。docker-compose运行目录下的所有文件docker-pompos.yum,extends文件或环境变量文件等组成一个工程若无特殊指定工程名即为每个当前目录名。一个共工程当中包含多个服务每个服务中定义了容器的运行的镜像参数依赖、当一个服务中包括多个容器实例docker-compose的工程默认配置文件默认为docker-compose.yml 可以通过环境变量compose_file或-f自定义配置文件其定义了多个服务和容器 yaml文件格式及编写注意事项
yaml是一个标记语言他可以很直观的展示数据序列化格式可读性高。类似于json数据描述语言语法比json简单的多。yaml数据结构通过缩进来表示连续的项目通过减号来表示键值对用冒号分隔数组中括号[]括起来hash用花括号{}括起来
使用yaml时需要注意
大小写敏感
通过缩进表示层级关系
不支持tab键缩进只能使用空格缩进
缩进的空格数目不重要但是相同层级左对齐
#注释
符号字符后缩进1个空格如冒号逗号 横杠-
如果包含特殊字符用 引起来会作为普通字符串处理双引号“ ”特殊字符做为本身想表示的意思name Hi,\nTom 数据结构
对象映射键值对的字典
animalpets
序列数组一组按次序排列的列表
pets
- Cat
- Dog
- Goldfish
pets: [Cat,Dog,Goldfish]
布尔值
debugtrue
debugfalse
示例
# yaml 格式
true和false系统默认是布尔型
json格式及docker生产经验 | 保留文本中的换行 3。 Docker Compose配置常用字段字段
字段- - -描述
build 指定Dockerfile 文件名要指定Dockerfile文件需要在build标签的子级标签中使用dockerfile标签指定
dockerfile 构建镜像上下文路径
context 可以是 dockerfile 的路径或者是指向 git 仓库的 url 地址
image 指定镜像
command 执行命令覆盖容器启动后默认执行的命令
container_name 指定容器名称由于容器名称是唯一的如果指定自定义名称则无法scale指定容器数量
deploy 指定部署和运行服务相关配置只能在 Swarm 模式使用
environment 添加环境变量
networks 加入网终引用顶级networks下条目
network_mode 设置容器的网络模式如 hostbridge..
ports 暴露容器端口与 -p 相同但端口不能低于 60
volumes 挂载一个宿主机目录或命令卷到容器命名卷要在顶级 volumes 定义卷名称
volumes_from 从另一个服务或容器挂载卷可选参数 :ro 和 :rw仅版本‘2’ 支持
hostname 容器主机名
sysctls 在容器内设置内核参数
links 连接到另外一个容器- 服务名称[:服务别名]
privileged 用来给容器root权限注意是不安全的true | false
restart 设置重启策略noalways on-failure unless-stopped
no默认策略在容器退出时不重启突器。
always在容器退出时总是重启究器。
on-failure在容器非正常退出时 (退出状态非0)才会重启容器
on-failure:3在容器非正常退出时重启突器
最多重启3次。
unless-stopped在容器退出时总是重启容器但是不考虑在 Docker 守护进程启动时就已经停止了的容器 volumes_from 从另一个服务或容器挂载卷可选参数 :ro 和 :rw仅版本‘2’ 支持如果在版本3中也想实现从另一个服务或容器挂载卷可以
创建一个顶级的命名卷volumes:
db-data:
以命名卷为通道完成两个逻辑卷通信 networks定义不同的网络域
不同网络域不能通信 docker compose ps查看用户名 创建时不要docker-compose -f docker-compose.yml -p -d 无-p项目名做名字 -p指定否则查找docker compose ps查找时也要指定
docker logs nginx-compose查看
docker-compose
command镜像后面的启动命令
两个容器互相从另一个服务挂载 或者直接挂载宿主机的