cURL是我喜欢的开源软件之一.虽然cURL的强大常常被认为是理所当然的,但我真心地认为它值得感谢和尊重.如果我们的工具箱失去了curl,那些需要和网络重度交互的人(我们大多数人都是这样的)将会陷入到困境中.curl速度快.体积小,并且和大多数好工具一样,简洁干净,尽量不影响用户,只做它们需要做的事情. 如果有人想使用curl中的一种功能(比如UNIX套接字支持),而恰恰系统提供的包的配置不支持这种功能,或者包版本太老而不包含这种功能,由于curl享有“数据传输的瑞士军刀”的美誉,可以想象这种情…
kubernetes离线安装包,仅需三步 如何让镜像尽可能小 很容器想到from scratch, 就是没任何基础镜像 FROM scratch COPY p / ENTRYPOINT ["/p"] 有几点要注意: ENTRYPOINT 或者CMD 必须要用[]这种模式,如果直接/p会用sh去启动,而scratch没有shell导致失败 二进制程序必须静态编译,也就是不能依赖libc什么的动态库 动态编译的bin程序: [root@dev-86-205 ci-sftp]# ldd p…
背景 随着容器技术的普及,越来越多的应用被容器化.人们使用容器的频率越来越高,但常常忽略一个基本但又非常重要的问题 - 容器镜像的体积.本文将介绍精简容器镜像的必要性并以基于 spring boot 的 java 应用为例描述最小化容器镜像的常用技巧. 精简容器镜像的必要性 精简容器镜像是非常必要的,下面分别从安全性和敏捷性两个角度进行阐释. 安全性 基于安全方面的考虑,将不必要的组件从镜像中移除可以减少攻击面.降低安全风险.虽然 docker 支持用户通过 Seccomp 限制容器内可以执行操…
Buildbot in Docker 前言 最近使用Buildbot做了一个自动测试的框架,为了部署方便,可以把测试框架做成Docker镜像,方便部署.这里记录下过程,供大家参考. 项目介绍 项目是一个Online的基于http的交易系统,其实就是一个Ad Exchange.然后为了对它进行自动化测试,我们会另外启动一个mock server模拟DSP,然后再启动一个mock client来向exchange发送请求,exchange会与后端DSP通讯后得到最终结果并且返回给client,cli…
注意:这里使用的是oracle的JRE,版本是1.8. 1.解压jre包,删除根目录下文本文件,然后删除其他不必要文件. #解压 tar xvcf jre-8u161-linux-x64.tar.gz #进入目录 cd jre1.8.0_161/ #删除文本文件 rm -rf COPYRIGHT LICENSE README release THIRDPARTYLICENSEREADME-JAVAFX.txtTHIRDPARTYLICENSEREADME.txt Welcome.html #删除…
参考: https://my.oschina.net/shyloveliyi/blog/1627020 1.首先下载jre,下载地址是https://www.java.com/en/download/manual.jsp,大概是77M. 2.解压jre包,删除根目录下文本文件,然后删除其他不必要文件. #解压 tar xvcf jre-8u161-linux-x64.tar.gz #进入目录 cd jre1.8.0_161/ #删除文本文件 rm -rf COPYRIGHT LICENSE RE…
Alpine介绍 Alpine 操作系统是一个面向安全的轻型 Linux 发行版.目前 Docker 官方已开始推荐使用 Alpine 替代之前的 Ubuntu 做为基础镜像环境.这样会带来多个好处.包括镜像下载速度加快,镜像安全性提高,主机之间的切换更方便,占用更少磁盘空间等. Alpine的特点: 小巧:基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB: 安全:面向安全的轻量发行版: 简单:提供APK包管理工具,软件的搜索.安装.删除.升级都…
让 curl 支持 HTTP2 我们需要安装 nghttp2(http2 的 C 语言库) 源码安装 安装 nghttp2 git clone https://github.com/tatsuhiro-t/nghttp2.git cd nghttp2 autoreconf -i automake autoconf ./configure make sudo make install 编译 curl wget http://curl.haxx.se/download/curl-7.46.0.tar…
一.获取安装包 http://zlib.net/zlib-1.2.11.tar.gz https://www.openssl.org/source/openssl-1.0.2e.tar.gz (openssl的版本必须在1.0.2e及以上) http://nginx.org/download/nginx-1.10.3.tar.gz   (nginx的版本必须在1.9.5以上) 二.解压三个包到相同目录编译nginx ./configure --prefix=/usr/local/nginx --…
1.下载alpine镜像 [root@docker43 ~]# docker pull alpine Using default tag: latest Trying to pull repository docker.io/library/alpine ... latest: Pulling from docker.io/library/alpine 4fe2ade4980c: Pull complete Digest: sha256:621c2f39f8133acb8e64023a94dbd…