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

南通企业自助建站百度知道首页

南通企业自助建站,百度知道首页,千锋和黑马培训前端哪个好,自己做的网站怎么发布上目录 Docker-compose 1、Docker-compose 的三大概念 2、YAML文件格式及编写注意事项 1)使用 YAML 时需要注意下面事项 2)ymal文件格式 3)json格式 3、Docker Compose配置常用字段 4、Docker-compose的四种重启策略 5、Docker Compose…

目录

Docker-compose

1、Docker-compose 的三大概念

2、YAML文件格式及编写注意事项

1)使用 YAML 时需要注意下面事项

2)ymal文件格式

3)json格式

3、Docker Compose配置常用字段

4、Docker-compose的四种重启策略

5、Docker Compose 常用命令

6、Docker-compose配置文件的编写


Docker-compose

docker-compose 实现在单机上对容器集群编排管理的工具。使用python开发的,能运行docker的平台也都能用docker-compose编排管理容器。

本质就是在yaml格式的docker-compose配置模板文件里定义多个容器的启动参数和依赖关系,并使用docker-compose根据这个模板文件的配置来启动和管理容器集群

1、Docker-compose 的三大概念

项目project -> 包含一个或多个服务service -> 包含一个或多个容器的镜像、映射端口、环境变量等启动参数

默认使用项目的目录名做project项目名,支持使用 -p 或 --project-name 来指定项目名
在项目目录里要包含一个 docker-compose 配置模板文件,默认为 docker-compose.yml,支持使用 -f 或 --file 来指定项目的配置模板文件
在配置模板文件里要包含一个或者多个服务,每个服务包含启动容器的名称、镜像、映射端口、环境变量、挂载点、网络模式、依赖关系等容器启动的配置参数

2、YAML文件格式及编写注意事项

YAML 是一种标记语言,它可以很直观的展示数据序列化格式,可读性高。类似于 json 数据描述语言,语法比 json 简单的很多。YAML 数据结构通过缩进来表示,连续的项目通过减号来表示,键值对用冒号分隔,数组用中括号 [] 括起来, hash 用花括号 {} 括起来。

1)使用 YAML 时需要注意下面事项

  • 大小写敏感
  • 通过缩进表示层级关系
  • 不支持制表符 tab 键缩进,只能使用空格缩进
  • 缩进的空格数目不重要,只要相同层级左对齐,通常开头缩进2个空格
  • 用 # 号注释
  • 符号字符后缩进1个空格,如冒号 :  、逗号 ,  、横杠 - 
  • 如果包含特殊字符用单引号('')引起来会作为普通字符串处理,双引号(""): 特殊字符作为本身想表示的意思

2)ymal文件格式

文件名格式以 .yml 或者.yaml 为后缀,用 空格缩进表示字段的层级关系,可读性高,易于人类管理。

#一个字段key有多个值的表达式
横向写法:
test: ["test1", "test2", "test3"]纵向写法:
ntest:
- "test1"
- "test2"
- "test3"#多级字段的格式
顶级/一级字段:二级字段1: ["值1", "值2"]二级字段2: 三级字段: 值     对象object类型value:            value: 相当于echo helloworld!helloworld!value: |          value: 相当于echo -e "hello\nworld!"helloworld!value: |-         value: 相当于echo -n helloworld!helloworld!value: |+         value: 相当于echo -e "hello\nworld!\n"helloworld!value: >          value: 相当于echo "hello world!"helloworld!name: &a zhangsan     相当于 a=yaml
book: *a              相当于 echo $a , book: zhangsan

3)json格式

文件名格式以 .json 为后缀,用 {} 表示字段的层级关系,程序接口解析效率高

{ "字段": "值"}
{ "debug": true }          布尔值类型
{ "ht": "dashuaige" }     字符串类型{"heitui01": ["ht", "shellking", "paidaxing"],"heitui02": ["zhangsan", "lisi", "wangwu"]
}{"websites": {                      一级字段"memory": "512M",                二级字段"disk": "100G","cpu": {                         三级字段"name": ["inter", "amd"]}}
}

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设置容器的网络模式,如 host,bridge,...
ports暴露容器端口,与 -p 相同,但端口不能低于 60
volumes挂载一个宿主机目录或命令卷到容器,命名卷要在顶级 volumes 定义卷名称
volumes_from从另一个服务或容器挂载卷,可选参数 :ro 和 :rw,仅版本 '2' 支持
hostname容器主机名
sysctls在容器内设置内核参数
links连接到另外一个容器,- 服务名称[:服务别名]
privileged用来给容器root权限,注意是不安全的,true | false
restart设置重启策略,no,always,no-failure,unless-stopped
depends_on定义服务之间依赖关系

4、Docker-compose的四种重启策略

1)no:默认策略,在容器退出时不重启容器。

2)always:在容器退出时总是重启容器。

3)no-failure:在容器非正常退出时(退出状态非0),才会重启容器。

4)unless-stopped:在容器退出时总是重启容器,但是不考虑在 Docker 守护进程启动时就已经停止了的容器。

5、Docker Compose 常用命令

字段描述
build重新构建服务
ps列出容器
up创建和启动容器
exec在容器里面执行命令
scale指定一个服务容器启动数量
top显示容器进程
logs查看容器输出
down删除容器、网络、数据卷和镜像
stop/start/restart停止/启动/重启容器

6、Docker-compose配置文件的编写

docker-compose配置文件采用yaml文件格式编写,所以前面有介绍yaml文件格式

下载安装Docker compose

Docker Compose 是 Docker 的独立产品,因此需要安装 Docker 之后在单独安装 Docker Compose

#下载

curl -L https://github.com/docker/compose/releases/download/1.21.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

#查看版本

docker-compose --version

准备依赖文件

mkdir -p /data/compose_nginx/nginx /opt/compose_nginx/wwwroot
cd /data/compose_nginx/nginx
cp nginx-1.12.0.tar.gz ./
 
vim run.sh
#!/bin/bash
/usr/local/nginx/sbin/nginx
 
vim Dockerfile
#基于基础镜像
FROM centos:7
#用户信息
MAINTAINER this is nginx image <dhj>
#添加环境包
RUN yum -y update
RUN yum -y install pcre-devel zlib-devel gcc gcc-c++ make
RUN useradd -M -s /sbin/nologin nginx
#上传nginx软件压缩包,并解压
ADD nginx-1.12.0.tar.gz /usr/local/src/
#指定工作目录
WORKDIR /usr/local/src/nginx-1.12.0
RUN ./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module && make && make install
ENV PATH /usr/local/nginx/sbin:$PATH
#指定http和https端口
EXPOSE 80
EXPOSE 443
//方法一:
RUN echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf            #关闭 nginx 在后台运行
#添加宿主机中run.sh到容器中
ADD run.sh /run.sh
RUN chmod 755 /run.sh
CMD ["/run.sh"]
//方法二:
ENTRYPOINT [ "/usr/local/nginx/sbin/nginx", "-g", "daemon off;" ]
 
 
echo "<h1>this is test web</h1>" > /opt/compose_nginx/wwwroot/index.html

编写配置文件docker-compose.yml

vim /data/compose_nginx/docker-compose.yml
version: '3'
services:
  nginx:
    container_name: web1
    hostname: nginx
    build:
      context: ./nginx
      dockerfile: Dockerfile
    ports:
      - 1216:80
      - 1217:443
    networks:
      lnmp:
        ipv4_address: 172.18.0.10
    volumes:
      - ./wwwroot:/usr/local/nginx/html
networks:
  lnmp:
    driver: bridge
    ipam:
      config:
        - subnet: 172.18.0.0/16

启动docker-compose

  1. cd /data/compose_nginx/

  2. docker-compose -f docker-compose.yml up -d #启动docker-compose

http://www.ds6.com.cn/news/99353.html

相关文章:

  • 淮南 搭建一个企业展示网站百度经验实用生活指南
  • 如东做网站的公司百度电商平台app
  • 个人网站可以做社交类型seo主要做什么
  • 做时时彩网站爱网
  • 生存曲线哪个网站可以做网络营销渠道的功能
  • 扬州室内设计公司排名贵州seo学校
  • 进入网站后台ftp空间后怎样上传seo关键词排名优化联系方式
  • 通州重庆网站建设西安网站建设公司排行榜
  • 手机网站用什么做的搜索引擎有哪些技巧
  • 怎么用自己电脑做网站搜索引擎优化自然排名的优点
  • 日ip5000的网站怎么做精准营销的三要素
  • winxp下做网站nba球队排名
  • 开发软件和做网站的区别北京优化靠谱的公司
  • 卡通风格网站欣赏郑州网络优化实力乐云seo
  • 做网站域名起什么作用上海seo优化外包公司
  • 乐清网站只做百度知道合伙人
  • 公司免费网站搭建湖南seo推广软件
  • 网站配置文件在哪里天津百度
  • 微信小程序商城官网杭州网站seo外包
  • workerman 做网站廊坊快速优化排名
  • 网站定制业务营销网站建设免费
  • 四川省建设工程招投标网站整合营销
  • 怎么用VS2012建设网站外链网站是什么
  • com网站域名百度竞价排名什么意思
  • 英雄联盟网站模版网络推广推广
  • 自助商城网站建设seo关键词快速排名软件
  • 创建wordpress主题南阳seo优化
  • 做网站需要什么配置服务器推广效果最好的平台
  • 做网站怎么切片网站建设
  • 人才网站 建设好 窗口百度公司排名