赞
踩
容器一键化部署的工具,针对Dockerfile,可以按照定制化的模式一键部署dockerfile创建的容器。定制:YAML文件。
YAML是一种标记语言,直观的展示数据序列化的格式。可读性高
数据格式的结构是通过缩进来进行表示的
注意事项:
1、大小写敏感,严格区分
2、通过缩进表示层级关系
3、不能用tab缩进,必须用空格缩进
4、#可以注释
5、符号之后必须缩进一格
6、特殊字符必须用单引号,字符串用双引号。
name: “luoyuhao”
age: 30
isStudent: ‘true’/flase
字符串,整数,布尔类型,也可以是小数点
列表结构,表示有序的元素的集合,使用-开头:
xy102:
-*luo
-*yu
-*hao
*代表空格
Mpas(映射),相当于字典或者对象。用键值对表示:
man:
name: luo
age: 20
多行文本块:|
shuoming: |
this is xy102
luo is first
ta 20 le
默认文本换行展示
docker-compose拉取的镜像生成的容器。
up docker-compose 创建和启动容器
scale 创建容器的数量
top 显示容器的进程
logs 看容器的输出日志
stop start restart 停止,重启,启动
down 删除容器,网络,数据卷,镜像。
version: '3'
定义docker-compose文件的版本,2.0之后都是3,顶格写就是全局使用
service:
定义镜像和容器的配置:
nginx:
container_name: web1
定义容器的名字,web1
hostname: nginx1
定义创建好之后容器的主机名
build:
构建的是dockerfile.
context: /opt/nginx1
声名上下文,上文是构建dockerfile,下文是context,告诉你dockerfile的路径
dockerfile: Dockerfile
ports:
- 80:80
-*443:443
networks:
mynet:
ipv4: 172.18.0.10
volumes:
-*/opt/nhtml:/usr/local/nginx/html/
networks:
mynet:
driver: bridge
ipam:
config:
- subnet: 172.18.0.0/16
docker-compose:使用docker-compose一键编排容器
-f:使用模版文件,必须是.yml结尾
- version: '3'
- services:
- nginx:
- hostname: nginx1
- container_name: nginx_server
- build:
- context: /opt/nginx
- dockerfile: Dockerfile
- ports:
- - 80:80
- - 443:443
- networks:
- lnmp:
- ipv4_address: 172.111.0.10
- volumes:
- - /opt/nginx:/opt/docker-nginx
-
- mysql:
- hostname: mysql
- container_name: mysql_server
- build:
- context: /opt/mysql
- dockerfile: Dockerfile
- ports:
- - 3306:3306
- networks:
- lnmp:
- ipv4_address: 172.111.0.20
- privileged: true
- volumes:
- - /opt/mysql:/opt/docker-mysql
-
- php:
- hostname: php
- container_name: php_server
- build:
- context: /opt/php
- dockerfile: Dockerfile
- ports:
- - 9000:9000
- networks:
- lnmp:
- ipv4_address: 172.111.0.30
- volumes_from:
- - "nginx"
- - "mysql"
-
- networks:
- lnmp:
- driver: bridge
- ipam:
- config:
- - subnet: 172.111.0.0/24
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。