镜像

Docker系列之入门篇

纵饮孤独 提交于 2020-03-09 19:06:10
Dcoker是什么? 概述 Docker 是世界领先的软件容器平台。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用 Docker 可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。 认识容器 有了容器,就可以将软件运行所需的所有资源打包到一个隔离的容器中。容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工作所需的库资源和设置。系统因此而变得高效、轻量、自给自足,还能保证部署在任何环境中的软件都能始终如一地运行。 以上是官方的解释。嗯,看完是不是仍然一脸懵逼,不要紧,我们先看来一张图: 推荐 先记忆 后理解,记忆什么?Docker组成的三个基本概念: 镜像 (Image):Docker 镜像可以看作是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。 容器(Container):容器镜像是轻量的、可执行的独立软件包,包含软件运行所需的所有内容:代码、运行时环境、系统工具、系统库和设置。 仓库(Repository)

k8s中部署发布应用

爱⌒轻易说出口 提交于 2020-03-09 10:15:14
1.项目迁移到K8S平台是怎样的流程 制作镜像: 使用dockerfile制作docker 镜像 镜像分为 基础镜像:centos,ubuntu 服务镜像:openjdk,nginx,mysql 项目镜像:项目代码打包在服务镜像里,最终交付物 java或者go的应用需要编译,php的可以不用编译。 控制器管理pod Deployment:无状态部署,例如Web,微服务,API StatefulSet:有状态部署,例如数据库,ZK,ETCD DaemonSet:守护进程部署,例如监控Agent、日志Agent Job & CronJob:批处理,例如数据库备份,邮件通知 pod数据持久化: 容器部署过程中一般有以下三种数据: 启动时需要的初始数据,可以是配置文件 启动过程中产生的临时数据,该临时数据需要多个容器间共享 启动过程中产生的业务数据 暴露应用: 使用Service ClusterIP类型暴露集群内部应用访问。 Service定义了Pod的逻辑集合和访问这个集合的策略 Service引入为了解决Pod的动态变化,提供服务发现和负载均衡 使用CoreDNS解析Service名称 对外发布应用: 使用Ingress对外暴露你的应用。 通过Service关联Pod 基于域名访问 通过Ingress Controller实现Pod的负载均衡 支持TCP/UDP 4层和HTTP 7层

docker

烂漫一生 提交于 2020-03-09 08:51:35
Docker 入门到精通 """ 1)docker就是Linux上及其轻量的虚拟机 2)虚拟机是存在宿主系统中,通过镜像给宿主系统拓展子系统的(一个镜像理论上可以做n个子系统) 3)两个特别重要的概念 image:镜像 container:容器(子系统) 4)工作方式: i)在服务器系统下载docker(为服务器安装虚拟机,服务器系统就是宿主系统) ii)用docker去下载对应需求的镜像:镜像操作 iii)通过镜像制造容器(装子系统):容器操作 5)优势 i)超级轻量级,docker安装的容器体积可以按kB度量 ii)集群部署,docker可以通过一个镜像制造出多个一模一样的容器 iii)便捷管理所有镜像与容器(命令行操作) 6)镜像和容器特点 一般一个镜像中只包含一种软件:比如mysql镜像,创建的容器中只有mysql环境;redis镜像,创建的容器中只有redis环境 注:一个镜像中有多个环境的需要自己制作镜像 """ CentOS安装Docker 设置管理Docker的仓库 """ 1)安装依赖 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 2)安装稳定仓库 sudo yum-config-manager --add-repo https://download.docker.com

将微服务运行在Docker上

喜夏-厌秋 提交于 2020-03-09 07:05:53
 将微服务运行在Docker上,首先要把服务制作成镜像,然后将镜像推送到公有仓库或私有仓库(可选步骤),最后像使用其他镜像的方式一样,使用我们的镜像。  本文将展示三种将微服务运行在Docker上的方式:1)通过Dockerfile;2)通过maven插件;3)通过Docker Compose 一、Dockerfile的方式  Dockerfile是一个文本文件,其中包含了若干指令,指令描述了构建镜像的细节,将部署包和Dockerfile放在同一个目录,通过docker build命令将Dockerfile所在目录的所有内容按Dockerfile配置的信息进行镜像制作。 1、Dockerfile指令  1)FROM:指定基础镜像,需要放在所有指令之前,表示当前要做的镜像是从FROM基础镜像继承。 FROM <image> FROM <image>:<tag> 例如:FROM java:8  2)ADD:复制文件:将Dockerfile目录下的文件复制到生成的镜像中的文件 ADD <src> <dest> 例如:ADD test.jar a.jar  3)COPY:复制文件,不支持URL和压缩包的复制 COPY <src> <dest>  4)ENV:设置环境变量 ENV <key> <value> ENV <key>=<value> 例如:ENV JAVA_HOME /path

python安装第三方包使用清华镜像的方法

久未见 提交于 2020-03-09 04:58:56
由于国内直接安装python第三方版本库的时候,下载安装速度慢,时不时的就timeout,下载失败,所以用国内的镜像安装比较方便,可以选择清华的镜像也可以选择阿里巴巴的镜像或者选择国防科技大学的镜像。 所以就列举一个安装清华镜像包的方式供参考: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 安装包名 (临时安装方式,即安装完一次,再次安装时要输入该镜像地址) 更改pip.ini的方式可以永久从该镜像安装,这是修改默认方式的安装方式: pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 或者直接找到pip.ini 文件用notpad++打开新增 index-url = 镜像地址的方式修改 修改完后,在使用pip install + 包名的方式 使用其他镜像的方式相同(这里不再介绍) 来源: CSDN 作者: Actor_boy 链接: https://blog.csdn.net/Actor_boy/article/details/104736113

dockerfile 的简介以及命令

梦想的初衷 提交于 2020-03-09 04:38:55
一、关于Dockerfile 在Docker中创建镜像最常用的方式,就是使用Dockerfile。Dockerfile是一个Docker镜像的描述文件,我们可以理解成火箭发射的A、B、C、D…的步骤。Dockerfile其内部包含了一条条的指令,每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。 一个Dockerfile的示例如下所示: #基于centos镜像 FROM centos #维护人的信息 MAINTAINER The CentOS Project < 303323496 @qq . com > #安装httpd软件包 RUN yum - y update RUN yum - y install httpd #开启80端口 EXPOSE 80 #复制网站首页文件至镜像中web站点下 ADD index . html / var / www / html / index . html #复制该脚本至镜像中,并修改其权限 ADD run . sh / run . sh RUN chmod 775 / run . sh #当启动容器时执行的脚本文件 CMD [ "/run.sh" ] 由上可知,Dockerfile结构大致分为四个部分: (1)基础镜像信息 (2)维护者信息 (3)镜像操作指令 (4)容器启动时执行指令。 Dockerfile每行支持一条指令

四.docker容器管理

对着背影说爱祢 提交于 2020-03-08 23:47:31
试验机192.168.181.144 用户root 密码123456 主机名 root@web:/# hostname web docker container run -d --name web2 -P nginx #-P :发布容器中声明EXPOSE端口到宿主机的随机端口; #docker ps -l #列出最新创建的容器; CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 803a6db849ab nginx "nginx -g 'daemon of…" 16 seconds ago Up 9 seconds 0.0.0.0:32768->80/tcp web2 http://192.168.181.144:32768/ docker image prune 移除不使用的镜像; Export 导出容器文件系统 -----------针对容器导出导入,不会保存层级信息,快照。 import导入容器文件 Save 保存导出完整镜像;docker image save nginx > nginx.tar ------针对镜像持久化,可以保存层级信息以及历史数据,俗称元数据。 Load 导入镜像 docker image load < nginx.tar Docker stats web 动态查看运行内存状态 Docker

docker

余生颓废 提交于 2020-03-08 22:23:07
Docker 入门到精通 """ 1)docker就是Linux上及其轻量的虚拟机 2)虚拟机是存在宿主系统中,通过镜像给宿主系统拓展子系统的(一个镜像理论上可以做n个子系统) 3)两个特别重要的概念 image:镜像 container:容器(子系统) 4)工作方式: i)在服务器系统下载docker(为服务器安装虚拟机,服务器系统就是宿主系统) ii)用docker去下载对应需求的镜像:镜像操作 iii)通过镜像制造容器(装子系统):容器操作 5)优势 i)超级轻量级,docker安装的容器体积可以按kB度量 ii)集群部署,docker可以通过一个镜像制造出多个一模一样的容器 iii)便捷管理所有镜像与容器(命令行操作) 6)镜像和容器特点 一般一个镜像中只包含一种软件:比如mysql镜像,创建的容器中只有mysql环境;redis镜像,创建的容器中只有redis环境 注:一个镜像中有多个环境的需要自己制作镜像 """ CentOS安装Docker 设置管理Docker的仓库 """ 1)安装依赖 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 2)安装稳定仓库 yum-config-manager --add-repo https://download.docker.com/linux