随笔分类 - Docker及k8s
摘要:前言 在实践中,自己会遇到2个容器之间互相访问通信的问题,这个时候就用到了docker run --link选项。自己也花了一段时间泡官网研究了--link的用法,把自己对--link的理解分享下。注意!docker官方已不推荐使用docker run --link来链接2个容器互相通信,随后的版本
阅读全文
摘要:CMD 和 ENTRYPOINT 指令都是用来指定容器启动时运行的命令。单从功能上来看,这两个命令几乎是重复的。单独使用其中的一个就可以实现绝大多数的用例。但是既然 doker 同时提供了它们,为了在使用中不至于混淆,本文试图把它们的用法理清楚。 exec 模式和 shell 模式 CMD 和 EN
阅读全文
摘要:我们可能都使用过 docker stop 命令来停止正在运行的容器,有时可能会使用 docker kill 命令强行关闭容器或者把某个信号传递给容器中的进程。这些操作的本质都是通过从主机向容器发送信号实现主机与容器中程序的交互。比如我们可以向容器中的应用发送一个重新加载信号,容器中的应用程序在接到信
阅读全文
摘要:一、 pod简介 1. pod概览 Pod是kubernetes中你可以创建和部署的最小也是最简单位。一个Pod代表着集群中运行的一个进程。 Pod中封装着应用的容器(有的情况下是好几个容器),存储、独立的网络IP,管理容器如何运行的策略选项。Pod代表着部署的一个单位:kubernetes中应用的
阅读全文
摘要:虽然 Dockerfile 简化了镜像构建的过程,并且把这个过程可以进行版本控制,但是很多人构建镜像的时候,都有一种冲动——把可能用到的东西都打包到镜像中。这种不正当的 Dockerfile 使用也会导致很多问题: docker 镜像太大。如果你经常使用镜像或者构建镜像,一定会遇到那种很大的镜像,甚
阅读全文
摘要:问题描述 我的deployment有单个pod,我的自定义docker镜像如下: 123 containers: - name: mycontainer image: myimage:latest 在开发过程中,我想推送新的最新版本并更新Deployment。无法明确定义tag/version并为每
阅读全文
摘要:如果公司的docker仓库(harbor),需要用户认证之后,才能拉取镜像。 那如何在k8s里生成这个secret呢? 这个secret如何还原呢? 在k8s的yaml文件里如何实现呢? 这里提供几个命令小贴士: 1,生成docker-registry的secret kubectl create s
阅读全文
摘要:(1)基本结构 (2)指令 • FROM • MAINTAINER • RUN • CMD • EXPOSE • ENV • ADD • COPY • ENTRYPOINT • VOLUME • USER • WORKDIR • ONBUILD (3)创建镜像 1、基本结构 Dockerfile 由
阅读全文
摘要:环境准备集群数量此次使用3台CentOS 7系列机器,分别为7.3,7.4,7.5 节点名称 节点IPmaster 192.168.0.100node1 192.168.0.101node2 192.168.0.102主要事项1、master节点安装配置etcd服务,作为k8s集群主数据库,保存所有
阅读全文
摘要:1. 开启Hyper-V 新建hyperv.cmd文件,内容如下: pushd "%~dp0" dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v
阅读全文
摘要:1.Kubernetes 1.1.概念 kubernetes(通常称为k8s)用于自动部署、扩展和管理容器化应用程序的开源系统。它旨在提供“跨主机集群的自动部署、扩展以及运行应用程序容器的平台”。支持一系列容器工具 ,包括Docker等。 1.2.特点 1)可移植:支持公有云、私有云、混合云、多重云
阅读全文
摘要:Dockerfile中使用HEALTHCHECK的形式有两种: 1、HEALTHCHECK [options] CMD command(本次详细解释) 2、HEALTHCHECK NODE 意思是禁止从父镜像继承的HEALTHCHECK生效 下面我们主要介绍第一种形式的应用: options有三个参
阅读全文
摘要:Dockerfile中的WORKDIR指令用于指定容器的一个目录, 容器启动时执行的命令会在该目录下执行。 相当于设置容器的工作目录了。我们来看一个dockerfile文件 #test FROM ubuntu MAINTAINER hello RUN mkdir /mydir RUN echo he
阅读全文
摘要:Docker Compose 概述与安装? 前面我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build、docker run 等命令操作容器。然而微服务架构的应用系统一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,那么效
阅读全文
摘要:如果你已经构建了一些多容器的应用程序,那么肯定需要定义一些网络规则来设置容器间的通信。有多种方式可以实现:可以通过--expose参数在运行时暴露端口,或者在Dockerfile里使用EXPOSE指令。还可以在Docker run的时候通过-p或者-P参数来发布端口。或者通过--link链接容器。虽
阅读全文
摘要:使用 Dockerfile 定制镜像 镜像的定制实际上就是定制每一层所添加的配置、文件。如果我们可以把每一层修改、安装、构建、操作的命令都写入一个脚本,用这个脚本来构建、定制镜像,那么无法重复的问题、镜像构建透明性的问题、体积的问题就都会解决。这个脚本就是 Dockerfile。 Dockerfil
阅读全文
摘要:一、docker镜像的更新 (1)启动镜像,写入一些文件或者更新软件 docker run -it 3afd47092a0e[root@44652ba46352 /]# ls (2)更新镜像 docker commit -m="test update" -a="wangsir" 44652ba463
阅读全文
摘要:docker 查看Docker 客户端的命令 docker run ubuntu:15.10 /bin/echo "Hello world" docker run -i -t ubuntu:15.10 /bin/bash -t:在新容器内指定一个伪终端或终端。 -i:允许你对容器内的标准输入 (ST
阅读全文
摘要:Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhon
阅读全文