Expose

分布式系统 in 2010s :软件构建方式和演化

自闭症网瘾萝莉.ら 提交于 2020-01-06 14:43:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 作者:黄东旭 本文为「分布式系统 in 2010s」 系列第二篇,第一篇请见《 分布式系统 in 2010s :存储之数据库篇 》。 我上大学的时候专业是软件工程,当时的软件工程是 CMM、瀑布模型之类。十几年过去了,看看现在我们的软件开发模式,尤其是在互联网行业,敏捷已经成为主流,很多时候老板说业务下周上线,那基本就是怎么快怎么来,所以现代架构师对于可复用性和弹性会有更多的关注。我所知道业界对 SOA 的关注是从 Amazon 的大规模 SOA 化开始, 2002 年 Bezos 要求 Amazon 的工程团队将所有的业务 API 和服务化, 几条原则 放在今天仍然非常适用: All teams will henceforth expose their data and functionality through service interfaces. Teams must communicate with each other through these interfaces. There will be no other form of inter-process communication allowed: no direct linking, no direct reads of another

003-Dockerfile的格式

◇◆丶佛笑我妖孽 提交于 2019-12-09 14:26:24
Dockerfile详解 FROM 格式:FROM<image>或FROM<image>:<tag> 解释:FROM是Dockerfile里的第一条指令(必须是),后面跟有效的镜像名(如果该镜像你的本地仓库没有则会从远处仓库Pull取)。然后后面的其它指令FROM的镜像中执行 MAINTAINER 格式:MAINTAINER <name> 解释:指定维护者信息 RUN 格式:RUN <command>或 RUN["executable", "param1", "param2"] 解释:运行命令,可以使用\来换行,也可以用上面的数组方式 CMD 格式: CMD ["executable","param1","param2"] 使用 exec 执行,推荐方式; CMD command param1 param2 在 /bin/sh 中执行,提供给需要交互的应用; CMD ["param1","param2"] 提供给ENTRYPOINT的默认参数; 解释:CMD指定容器启动是执行的命令,每个Dockerfile只能有一条CMD命令,如果指定了多条,只有最后一条会被执行。如果你在启动容器的时候也指定的命令,那么会覆盖Dockerfile构建的镜像里面的CMD命令 ENTRYPOINT 格式: ENTRYPOINT ["executable", "param1","param2"]

003-Dockerfile的格式

给你一囗甜甜゛ 提交于 2019-12-09 00:48:26
Dockerfile详解 FROM 格式:FROM<image>或FROM<image>:<tag> 解释:FROM是Dockerfile里的第一条指令(必须是),后面跟有效的镜像名(如果该镜像你的本地仓库没有则会从远处仓库Pull取)。然后后面的其它指令FROM的镜像中执行 MAINTAINER 格式:MAINTAINER <name> 解释:指定维护者信息 RUN 格式:RUN <command>或 RUN["executable", "param1", "param2"] 解释:运行命令,可以使用\来换行,也可以用上面的数组方式 CMD 格式: CMD ["executable","param1","param2"] 使用 exec 执行,推荐方式; CMD command param1 param2 在 /bin/sh 中执行,提供给需要交互的应用; CMD ["param1","param2"] 提供给ENTRYPOINT的默认参数; 解释:CMD指定容器启动是执行的命令,每个Dockerfile只能有一条CMD命令,如果指定了多条,只有最后一条会被执行。如果你在启动容器的时候也指定的命令,那么会覆盖Dockerfile构建的镜像里面的CMD命令 ENTRYPOINT 格式: ENTRYPOINT ["executable", "param1","param2"]

nginx记录(二)

痞子三分冷 提交于 2019-12-07 12:53:40
显示linux文件的行号: 修改vi ~/.vimrc 文件,添加:set number即可,文件位于/etc/.vimrc 隐藏nginx版本号,隐藏X-Powered-By 隐藏Server的信息,Nginx版本号,在nginx.conf http段加上 server_tokens off就可以隐藏掉nginx的版本号 隐藏X-Powered-By:PHP/7.3.0 在php.ini文件关闭expose_php = On改成expose_php = Off 大约在370行,把expose_php = On 改成expose_php = Off,重新加载nginx配置文件,重启php 成品图如下: 还有种方法,需要重新编译nginx,较复杂。 来源: oschina 链接: https://my.oschina.net/zfblog/blog/3138470

nginx记录(二)

时光总嘲笑我的痴心妄想 提交于 2019-12-07 12:39:52
显示linux文件的行号: 修改vi ~/.vimrc 文件,添加:set number即可,文件位于/etc/.vimrc 隐藏nginx版本号,隐藏X-Powered-By 隐藏Server的信息,Nginx版本号,在nginx.conf http段加上 server_tokens off就可以隐藏掉nginx的版本号 隐藏X-Powered-By:PHP/7.3.0 在php.ini文件关闭expose_php = On改成expose_php = Off 大约在370行,把expose_php = On 改成expose_php = Off,重新加载nginx配置文件,重启php 成品图如下: 还有种方法,需要重新编译nginx,较复杂。 来源: oschina 链接: https://my.oschina.net/zfblog/blog/3138470

nginx记录(二)

橙三吉。 提交于 2019-12-06 21:16:28
显示linux文件的行号: 修改vi ~/.vimrc 文件,添加:set number即可,文件位于/etc/.vimrc 隐藏nginx版本号,隐藏X-Powered-By 隐藏Server的信息,Nginx版本号,在nginx.conf http段加上 server_tokens off就可以隐藏掉nginx的版本号 隐藏X-Powered-By:PHP/7.3.0 在php.ini文件关闭expose_php = On改成expose_php = Off 大约在370行,把expose_php = On 改成expose_php = Off,重新加载nginx配置文件,重启php 成品图如下: 还有种方法,需要重新编译nginx,较复杂。 来源: https://my.oschina.net/zfblog/blog/3138470

Dockerfile构建私有镜像

╄→尐↘猪︶ㄣ 提交于 2019-12-06 15:01:02
构建第一个镜像 镜像的定制实际上就是定制每一层所添加的配置,文件。我们可以把每一层修改,安装,构建,操作的命令都写入一个脚本,这个脚本就是Dockerfile。 Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容就是该层因该如何构建。 接下来我们以官方nginx镜像为例,使用Dockerfile来定制镜像。 在一个空白的目录中,建立一个文本文件,并将文件命名为Dockerfile: mkdir mynginx cd mynginx touch Dockerfile 在Dockerfile文件中写入以下内容: FROM nginx RUN echo '<h1>Hello Docker!</h1>' > /usr/share/nginx/html/index.html 使用docker build命令创建镜像 docker build -t mynginx:1.0 . 运行docker run命令,既可以运行构建好的mynginx镜像,通过浏览器 http://ip:8080 即可访问nginx服务 docker run -d -p 8080:80 mynginx:1.0 Dockerfile构建命令 FROM 指定基础镜像 所谓定制镜像,一定是以一个镜像为基础,在其上进行定制。基础镜像是必须指定的,而FROM指令就是指定基础镜像

Dockerfile构建私有镜像

安稳与你 提交于 2019-12-06 14:24:37
构建第一个镜像 镜像的定制实际上就是定制每一层所添加的配置,文件。我们可以把每一层修改,安装,构建,操作的命令都写入一个脚本,这个脚本就是Dockerfile。 Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容就是该层因该如何构建。 接下来我们以官方nginx镜像为例,使用Dockerfile来定制镜像。 在一个空白的目录中,建立一个文本文件,并将文件命名为Dockerfile: mkdir mynginx cd mynginx touch Dockerfile 在Dockerfile文件中写入以下内容: FROM nginx RUN echo '<h1>Hello Docker!</h1>' > /usr/share/nginx/html/index.html 使用docker build命令创建镜像 docker build -t mynginx:1.0 . 运行docker run命令,既可以运行构建好的mynginx镜像,通过浏览器 http://ip:8080 即可访问nginx服务 docker run -d -p 8080:80 mynginx:1.0 Dockerfile构建命令 FROM 指定基础镜像 所谓定制镜像,一定是以一个镜像为基础,在其上进行定制。基础镜像是必须指定的,而FROM指令就是指定基础镜像

Docker 构建脚本 Dockerfile 指令全解析

寵の児 提交于 2019-12-04 19:57:37
1. 前言 Dockerfile 是用来构建自定义 Docker 镜像的文本文档。我们通过 docker build 命令用于从 Dockerfile 文件构建镜像。 如果你要构建自定义镜像, Dockerfile 是你必须学会的技能之一。 2. Dockerfile 的基本结构 Dockerfile 一般分为:基础镜像、镜像元信息、镜像操作指令和容器启动时执行指令, # 为 Dockerfile 中的注释。 3. Dockerfile 文件说明 Docker 从上到下的顺序运行 Dockerfile 的指令,每一个指令都以 step 为步骤。而且文件的命名也必须为 Dockerfile 。 4. Dockerfile 常用的指令。 接下来对常用的 Dockerfile 指令进行总结。 4.1 FROM 指令 FROM 是指定基础镜像,必须为第一个命令,格式: FROM <image>:<tag> 其中 tag 或 digest 是可选的,如果不使用这两个值时,会使用 latest 版本的基础镜像。 示例: FROM mysql:5.6 4.2 MAINTAINER 指令 MAINTAINER 用来声明维护者信息, 该命令已经过期 ,推荐使用 LABEL ,格式: MAINTAINER <name> 4.3 LABEL 指令 LABEL:用于为镜像添加元数据,多用于声明构建信息

基于docker构建测试环境

心已入冬 提交于 2019-11-30 18:03:09
目录 0x01介绍 0x02 镜像基本操作 0x03 容器基本操作 0x04 容器的修改与保存 0x05 使用Dockerfile定制镜像 0x01介绍 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源,它可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化;容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低,通过docker我们可以快速搭建起比vm轻便很多的测试环境。 镜像 :是用于创建 Docker 容器的模板 容器 :独立运行的一个或一组应用 仓库 :镜像的集中存放地,可以理解为代码控制中的代码仓库,Docker Hub( https://hub.docker.com )提供了庞大的镜像集合供使用 这里使用的是Ubuntu18来进行实践的 0x02 镜像基本操作 docker的安装不细说了,网上有大量的内容。 从仓库中获取镜像 搜索镜像 docker search image_name 这里以nginx为例 可以看到查询后有5列内容,依次是: 名字、描述、获得的star数、是否官方提供、镜像是否是通过自动化构建生成的 如果要对搜索结果进行过滤的话,可以通过以下的命令来进行 是否是官方提供 docker