maintainer

Dockerfile文件详解

心已入冬 提交于 2020-07-29 04:54:09
什么是dockerfile? Dockerfile是一个包含用于组合映像的命令的文本文档。可以使用在命令行中调用任何命令。 Docker通过读取 Dockerfile 中的指令自动生成映像。 docker build 命令用于从Dockerfile构建映像。可以在 docker build 命令中使用 -f 标志指向文件系统中任何位置的Dockerfile。 例: docker build -f /path/to/a/Dockerfile Dockerfile的基本结构 Dockerfile 一般分为四部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令,’#’ 为 Dockerfile 中的注释。 Dockerfile文件说明 Docker以从上到下的顺序运行Dockerfile的指令。为了指定基本映像,第一条指令必须是 FROM 。一个声明以 # 字符开头则被视为注释。可以在Docker文件中使用 RUN , CMD , FROM , EXPOSE , ENV 等指令。 在这里列出了一些常用的指令。 FROM:指定基础镜像,必须为第一个命令 格式:   FROM <image>   FROM <image>:<tag>   FROM <image>@<digest> 示例:    FROM mysql :5.6 注:   tag或digest是可选的

OAM 创始团队:揭秘 OAM Kubernetes 实现核心原理

安稳与你 提交于 2020-07-28 20:50:34
作者 | Andy Shi(阿里云高级技术专家)、天元(阿里云技术专家) 今年 5 月,阿里云和微软云共同宣布, Open Application Model (OAM) 社区携手知名混合云管理项目 Crossplane 社区,联合发布了 OAM 在 Kubernetes 平台上的标准实现与核心依赖库。 本次合作达成后,OAM 社区成功的将标准应用定义和标准化的云服务管理能力统一起来,迈出了实现真正意义上的无差别云端应用交付的关键一步 。 去年 10 月 , 阿里云和微软共同推出了 OAM 项目 ,旨在构建围绕 Kubernetes 的云原生应用规范。OAM 描述了一个模型 —— 开发人员可以在其中定义应用程序组件;应用程序操作员负责创建这些组件的实例并为它们分配应用程序配置;基础架构运营商负责定义、安装和维护平台上可用的基础服务。 本次合作是阿里云、微软与 Crossplane 社区的三方技术合作,主要围绕 OAM 在 Kubernetes 上的标准实现以及 Crossplane 项目的 OAM 化展开。因为 Kubernetes 社区在落地 OAM 模型的过程中,提出了关于 OAM 标准实现的诉求。所以这次合作的一个重点,就是三方工程师使用 Go 语言开发了一个 OAM Kubernetes 核心依赖库。这个项目的名字叫做 oam-kubernetes-runtime 。OAM

Docker总结3/3---备份迁移和仓库

你说的曾经没有我的故事 提交于 2020-07-28 19:44:49
目录 迁移与备份 1. 容器保存为镜像 2. 镜像备份 3. 镜像恢复与迁移 Dockerfile 1. 什么是Dockerfile 2. 常用命令 3. 使用脚本创建镜像步骤 Docker私有仓库 1. 私有仓库搭建与配置 2. 镜像上传至私有仓库 总结 迁移与备份 1. 容器保存为镜像 我们可以通过以下命令将容器保存为镜像 基础此镜像创建的容器,包含镜像中部署的静态页面等内容 docker commit mynginx mynginx_i 2. 镜像备份 我们可以通过以下命令将镜像保存为tar 文件 docker save -o mynginx.tar mynginx_i 3. 镜像恢复与迁移 首先我们先删除掉mynginx_img镜像 然后执行此命令进行恢复 一个服务器上测试,可以先删除之前的mynginx_i镜像(先删除此镜像创建的容器),再导入mynginx.tar恢复为mynginx_i镜像 docker load -i mynginx.tar -i 输入的文件 执行后再次查看镜像,可以看到镜像已经恢复 Dockerfile 1. 什么是Dockerfile Dockerfile是由一系列命令和参数构成的脚本,这些命令应用于 基础镜像(操作系统级别的镜像 并最终创建一个新的镜像。 基础镜像 :例如Centos 上创建了JKD,Centos 就是JDK的基础镜像

Docker 定制ssh、java等基础服务镜像

点点圈 提交于 2020-07-27 05:58:55
1、启动一个基于centos镜像的容器 # docker run –p 10022:22 - ti centos bash [root@f743588bbeef /]# -p: 本地端口映射容器22端口,是为了后面启动ssh后测试能否正常登陆 2、在容器中安装openssh-server、java等 [root@f743588bbeef /]# yum install -y -q openssh-server java-1.7.0-openjdk net-tools 3、修改sshd_config配置文件 [root@f743588bbeef /]# ssh-keygen -q -t rsa -b 2048 -f /etc/ ssh /ssh_host_rsa_key -N '' [root@f743588bbeef /]# ssh-keygen -q -t ecdsa -f /etc/ ssh /ssh_host_ecdsa_key -N '' [root@f743588bbeef /]# ssh-keygen -t dsa -f /etc/ ssh /ssh_host_ed25519_key -N '' [root@f743588bbeef /]# sed -i " s/UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g "

服务器docker部署使用最新dubbo-admin(2)

99封情书 提交于 2020-05-08 12:32:38
下载最新dubbo-admin https://github.com/apache/dubbo-admin 1、执行打包 mvn clean package 2、上传 dubbo-admin-develop/dubbo-admin-distribution/target /dubbo-admin-0.2.0-SNAPSHOT.jar 到服务器 3、在 dubbo-admin-0.2.0-SNAPSHOT.jar 同级目录新增 Dockerfile 文件 FROM openjdk:8-jre LABEL maintainer="dev@dubbo.apache.org" COPY dubbo-admin-0.2.0-SNAPSHOT.jar /app.jar ENTRYPOINT ["java","-XX:+UnlockExperimentalVMOptions","-XX:+UseCGroupMemoryLimitForHeap","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] EXPOSE 8080 4、创建镜像 docker build -t dubbo-admin:0.2.0-SNAPSHOT . 5、运行 docker run -p 8089:8080 -dit --name my_dubbo

mac OS 查看 CPU 型号; linux 查看CPU 型号

瘦欲@ 提交于 2020-05-07 13:07:51
当你在自己平台进行测试的时候,需要告诉讨论的对方自己的型号,配置;这样maintainer 才能分析你测试的合理性: macos 获取自身的cpu型号,可以使用sysctl 命令: ➜ ~ sysctl -a | grep brand_string linux 平台,可以直接在 /proc/cpuinfo 中查看; cat /proc/cpuinfo | grep " model name " | tail -n 1 model name : Intel(R) Xeon(R) Gold 5117 CPU @ 2 .00GHz 保持更新!更多内容,请关注cnblogs.com/xuyaowen; 来源: oschina 链接: https://my.oschina.net/u/4271269/blog/4269031

mac OS 查看 CPU 型号

穿精又带淫゛_ 提交于 2020-05-07 11:49:43
当你在自己平台进行测试的时候,需要告诉讨论的对方自己的型号,配置;这样maintainer 才能分析你测试的合理性: macos 获取自身的cpu型号,可以使用sysctl 命令: ➜ ~ sysctl -a | grep brand_string linux 平台,可以直接在 /proc/cpuinfo 中查看; cat /proc/cpuinfo | grep " model name " | tail -n 1 model name : Intel(R) Xeon(R) Gold 5117 CPU @ 2 .00GHz 保持更新!更多内容,请关注cnblogs.com/xuyaowen; 来源: oschina 链接: https://my.oschina.net/u/4306251/blog/4269103

Dockerfile文件常用指令详解

余生长醉 提交于 2020-05-05 17:58:06
镜像的定制实际上就是定制每一层所添加的配置、文件。我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,这个脚本就是Dockerfile。Dockerfile是一个文本文件,其内包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。 FROM指令 该指令指定基础镜像,然后对镜像进行定制。 FROM ubuntu:16.04 Docker还存在一个特殊的镜像,名为scratch,它表示一个空白镜像,如果你一scratch为基础镜像的话,意味着你不以任何镜像为基础,接下来所写的指令将作为镜像的第一层。对于Linux下静态编译的程序来说,并不需要有操作系统提供运行时支持,所需的一切库都已经在可执行文件里了,因此直接FROM scratch会让镜像体积更加小巧。 示例: FROM scratch … RUN指令 RUN指令是用来执行命令行命令的。其格式有两种: shell格式:RUN <命令> RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html exec格式: RUN [“可执行文件”, “参数1”, “参数2”] RUN tar -xzf redis.tar.gz -C /usr/src/redis --strip-components = 1 RUN make

springboot docker jenkins 自动化部署并上传镜像

自古美人都是妖i 提交于 2020-05-04 08:30:40
springboot docker jenkins 自动化部署并上传镜像 springboot + docker + jenkins自动化部署项目,jenkins、mysql、redis都是docker运行的,并且没有使用虚拟机,就在阿里云服务器(centos7)运行 1、前期准备工作不说了 2、在项目根目录下新建Dockerfile Dockerfile文件内容为: 基础镜像 FROM openjdk:12 作者 MAINTAINER demo demo@qq.com VOLUME /tmp 指定配置文件,以及jar包在服务器上的路径 ENTRYPOINT ["java","-Dspring.profiles.active=prod","-jar","/lcy/work/tools/tools.jar"] 暴露端口 EXPOSE 8092 3、在服务器找个目录新建一个.sh文件 !/bin/sh echo '================开始构建镜像==============' 镜像名称 IMAGE_NAME='registry.cn-beijing.aliyuncs.com/???/tools' 打包后在jenkins的地址 SOURCE_PATH='/lcy/jenkins/workspace/tools' Dockerfile执行jar包的地址 BASE_PATH='

Dockerfile构建镜像及相关命令

北慕城南 提交于 2020-04-28 15:34:03
Dockerfile 镜像描述文件 Dockerfile 是一个包含用于组合镜像的命令的文本文档 Docker通过读取 Dockerfile 中的指令按步自动生成镜像 docker build -t 机构/镜像名<:tags> Dockerfile目录 Dockerfile 基础命令 FROM - 基于基准镜像 #制作基准镜像(基于centos:lastest) FROM centos #不依赖任何基准镜像base image FROM scratch # 基于 采用openjdk8 + tomcat 9.0.22 的镜像 FROM tomcat: 9.0.22-jdk8-openjdk 尽量使用官方提供的Base Image LABEL & MAINTAINER - 说明信息 MAINTAINER SvenAugustus LABEL version = "1.0" LABEL description = "XXX" WORKDIR - 设置工作目录 WORKDIR /usr/local #自动创建 WORKDIR /usr/local/newdir 尽量使用绝对路径 ADD & COPY - 复制文件 #复制到/root ADD hello /root #添加根目录并解压 ADD test.tar.gz / ADD 除了复制,还具备添加远程文件功能 ENV - 设置环境常量