容器编排技术

容器编排技术

两台docker环境

docker-compose 拖到/usr/local/bin

cd /usr/local/bin

chmod x docker-compose

以nginx为案列 写资源创建模板 yaml格式

mkdir compose_nginx/

cd compose_nginx/

vim Dockerfile

FROM centos:7

#用户信息

MAINTAINER this is nginx image <wang>

#添加环境包

RUN yum -y update

RUN yum -y install pcre-devel zlib-devel gcc gcc-c make

RUN useradd -M -s /sbin/nologin nginx

#下载nginnx软件包

ADD nginx-1.12.2.tar.gz /usr/local/src

WORKDIR /usr/local/src

#指定工作目录

WORKDIR nginx-1.12.2

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

#添加宿主机中run.sh到容器中

ADD run.sh /run.sh

RUN chmod 755 /run.sh

CMD ["/run.sh"]

nginx-1.12.2.tar.gz包拖入同级目录

vi run.sh       同级目录

#!/bin/bash

/usr/local/nginx/sbin/nginx

#nginx镜像可以做了 现在要编排容器 产生镜像和容器建立端口添加页面

cd ..

写编排文件(即创建模板的文件)

vim docker-compose.yaml

version: '3'

services:

nginx:

hostname: nginx

build:

context: ./nginx

dockerfile: Dockerfile

ports:

- 1216:80

- 1218:443

networks:

- abc

volumes:

- ./wwwroot:/usr/local/nginx/html

networks:

abc:

(compose版本号

服务们

Nginx

定义名称

构建镜像

包含 当前目录下的nginx目录(搞不清写绝对路径)

dockerfile下的

暴露端口们

http 80 不加空格(加了空格就是里面的一个字段)

https 443

网络名(相当于vlan划分 自己定义的)

abc

绑定外部容器卷

当前目录底下 有个wwwroot映射(挂载)到容器某路径底下(外部路径可以定义)

这里和nginx对齐可以加httpd服务

命名空间  (自己定义 这么多内容都在这里)

abc)

(wwwroot不需要创建 因为-v了)

docker-compose -f /root/compose_nginx/docker-compose.yaml up -d 切换到任意目录 指定编排的文件(可绝对路径) 让容器跑起来 守护进程(从构建镜像到容器运行)

docker images 有两个镜像nginx和centos7

docker ps -a  有一个容器 并且启动了

cd /root/compose_nginx/

ls

有 wwwroot    (是放nginx首页的 没往里写 可以写一个)

vim index.html

<h1>hello world</h1>         (这段被容器站点加载,打开看到页面)

真机:http://20.0.0.10:1216      (访问的是容器内部的nginx,nginx用的是首页的数据卷)

自动编排OK

疑问 ifconfig多了 inet 172.18.0.2 一个网段

是docker-compose.yaml中的networks:下的adc(划分了一个子网空间 是)

11.28 networks重新创建了网段 名叫abc 隔离(实际上建立了新网桥)

看容器时哪个网段

docker ps –a

docker exec –it /bin/bash

yum –y install net-tools

ifconfig    (容器是用的划分的新网段 创建网络 也安全)

来源:https://www.icode9.com/content-4-771701.html

(0)

相关推荐

  • docker-compose启动容器Unable to access jarfile.

    此类问题比较多,先从基础找问题 首先容器无法启动,要查看日志,如何查看镜像启动失败日志? docker inspect --format '{{.LogPath}}' 容器ID 然后通过cat命令查看 ...

  • Docker学习笔记之--借助Docker Compose进行多容器部署(环境:centos7)

    接下来演示借助Docker Compose进行多容器部署. 前边的章节演示尽管可以实现需求功能,但是在生产环境当中,维护起来显然很麻烦,所以下边演示借助Docker Compose功能,实现一键部署! ...

  • Docker 制作Nginx镜像

    参考文章:https://www.jianshu.com/p/dc4cd0547d1e 镜像的制作方式有两种,一种是下载别人的镜像之后再制作成自己的镜像,一种是从头开始制作自己的镜像 第一种,下载别人 ...

  • Docker-compose(多容器编排工具)

    在学习使用docker-compose之前必须要了解YAML语言的用法.YAML语言是一种非常简单的语言,下篇会具体介绍. Docker-compose简介 # Docker三剑客: docker-c ...

  • 盛装液氨介质压力容器技术要求

    储存液氨介质的压力容器广泛使用,多数情况下液氨介质属于应力腐蚀环境,在压力容器设计.制造.检验.验收中应提出特殊要求,但是设计者往往会忽视规范要求. 液氨应力腐蚀环境条件:[HG/T20581-201 ...

  • Q370R中低温压力容器正火钢板技术要求

    Q370R中低温压力容器正火钢板Q370R钢板属于中低温压力钢板,广泛应用于石油.化工.电站锅炉等行业,用于制作反应器.换热器.分离器.球罐.油气罐.液化气罐.核能反应堆压力壳炉.锅炉汽包.液化石油气 ...

  • 卫矛容器育苗的关键技术

    卫矛是东北高寒地区著名的四大观果树种之一,主要分布在我国的吉林.辽宁.河南.河北.山东.内蒙古等地,该植株花期为4-5月份,种子成熟期为9月份,种子脱落期为9-10月份,接下来小编就来简单说说卫矛容器 ...

  • docker学习6-docker-compose容器集群编排

    前言 实际工作中我们部署一个应用,一般不仅仅只有一个容器,可能会涉及到多个,比如用到数据库,中间件MQ,web前端和后端服务,等多个容器. 我们如果一个个去启动应用,当项目非常多时,就很难记住了,所有 ...

  • 云原生之路:容器技术落地最佳实践

    作者:易立 阿里技术 没有集装箱,就没有全球化.--<经济学人> 什么是容器? 容器的英语是 Container,它的意思是集装箱.我们知道,经济全球化的基础就是现代运输体系,而其核心正是 ...

  • 舞阳美标A573Gr70压力容器用钢板技术要求

    一.A573Gr70钢板介绍:A573级别:58级,65级,70级,三个质量等级.A573Gr70执行标准:美国材料与试验协会标准,ASTM A573/573M-19.A573Gr70技术条件:化学成 ...

  • 分布式系统开发实战:虚拟化与容器技术,基于容器的持续部署

    基于容器的持续部署 随着Docker等容器技术的纷纷涌现及开源发布,软件开发行业对于现代化应用的打包以及部署方式发生了巨大的变化.想象在没有容器等虚拟化技术的年代,程序经常需要手工部署和测试,这种工作 ...

  • 算法工程师的修养 | Docker容器技术使用指南

    编辑  开源Linux 侵删 目录 第一部分 Docker 容器技术基础及其应用场景介绍  1.1 Docker 的基本概念 1.2 为什么使用 Docker 1.3 Docker 体系结构简介 1. ...