镜像

VM中Ubuntu18上Docker+Rancher的集群化部署管理

对着背影说爱祢 提交于 2020-01-15 04:05:48
1.vm 安装 ubuntu-18.04.3-live-server-amd64.isccker ( 安装参考 ) 注意更换源: http://mirrors.163.com/ubuntu/ date -R ---- 查看时间 sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ----------- 网上同步时间 1. 安装ntpdate工具 # sudo apt-get install ntpdate 2. 设置系统时间与网络时间同步 # ntpdate cn.pool.ntp.org 3. 将系统时间写入硬件时间 # hwclock --systohc 2.安装 docker 注意:重启 ubuntu 更改 ip: ---- vm 网络改成桥接模式 sudo apt-get install docker.io -y sudo systemctl enable docker 常用命令: docker --version /etc/init.d/docker status 重启: systemctl daemon-reload sudo service docker start 3.安装Putty后,配置 docker 的镜像为阿里云镜像 cd /etc/docker vim daemon.json {

Docker安全管理(实战!!!)

僤鯓⒐⒋嵵緔 提交于 2020-01-15 02:22:41
Docker安全 Docker与虚拟机的区别 隔离与共享 虚拟机通过添加 Hypervisor 层,虚拟出网卡、内存、CPU 等虚拟硬件,再在其上建立 虚拟机,每个虚拟机都有自己的系统内核 Docker 容器则是通过隔离的方式,将文件系统、进程、设备、网络等资源进行隔离,再对权限、CPU 资源等进行控制,最终让容器之间互不影响, 容器无法影响宿主机。容器与宿主机共享内核、文件系统、硬件等资源。 性能和损耗 与虚拟机相比,容器资源损耗要少。 同样的宿主机下,能够建立容器的数量要比虚拟 机多。 但是,虚拟机的安全性要比容器稍好,要从虚拟机攻破到宿主机或其他虚拟机,需要 先攻破 Hypervisor 层,这是极其困难的 而 docker 容器与宿主机共享内核、文件系统等资源, 更有可能对其他容器、宿主机产生影响。 Docker存在的安全问题 Docker自身漏洞 作为一款应用 Docker 本身实现上会有代码缺陷。CVE官方记录Docker历史版本共有超过20项漏洞。 -骇客常用的GJ手段主要有代码执行、权限提升、 信息泄露、权限绕过等。目前 Docker 版本更迭非常快,Docker 用户最好将 Docker 升级为 最新版本。 Docker源码问题 1)骇客上传恶意镜像 如果有骇客在制作的镜像中植入病毒、后门等恶意软件,那么环境从一开始就已经不安全了,后续更没有什么安全可言。 2

Docker容器之镜像管理、端口映射、容器互联

家住魔仙堡 提交于 2020-01-15 00:58:24
docker镜像的分层  Dockerfile 中的每个指令都会创建一个新的镜像层;  镜像层将会被缓存和复用;  当 Dockerfile 的指令修改了,复制的文件变化了,或者构建镜像时指定的变量不同了,对应的镜像层缓存就会失效;  某一层的镜像缓存失效之后,它之后的镜像层缓存都会失效;  镜像层是不变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然包含该文件 docker镜像 是应用发布的标准格式 可支撑一个docker容器的运行 docker镜像的创建方法 基于已有镜像创建 基于本地模板创建 基于dockerfile创建 基于已有镜像创建 将容器里面运行的程序及运行环境打包生成新的镜像 docker commit [选项] 容器ID/名称 仓库名称:[标签] -m:说明信息 -a:作者信息 -p:生成过程中停止容器的运行 基于本地模板创建 通过导入操作系统模板文件生成新的镜像 使用wget命令导入为本地镜像 导入成功后可查看本地镜像信息 基于 Dockerfile 创建 Dockerfile 是由一组指令组成的文件 Dockerfile 结构的四部分: 基础镜像信息; 维护者信息; 镜像操作指令; 容器启动时执行指令; 使用 Dockerfile 创建镜像并在容器中运行 dockerfile操作指令 指令 含义 FROM 镜像 指定新镜像所基于的镜像

Docker--DockerFile体系结构(保留字指令详解)

耗尽温柔 提交于 2020-01-15 00:36:02
DockerFile体系结构 FROM 基础镜像,当前新镜像是基于那个镜像的 MAINTAINER 镜像维护者的姓名和邮箱地址 RUN 容器构建时需要运行的命令 EXPOSE 当前容器对外暴露出的端口 WORKDIR 指定在创建容器后,终端默认登录进来的工作目录,一个落脚点 ENV 用来在构建镜像过程中设置环境变量 例如:ENV MY_PATH /usr/mytest 这个环境变量可以在后续的任何RUN指令中使用,这就如同在命令前面指定了环境变量前缀一样; 也可以在其它指令中直接使用这些环境变量,比如:WORKDIR $MY_PATH ADD 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包 COPY 类似ADD,拷贝文件和目录到镜像中。 将从构建上下文目录中<源路径>的文件/目录复制到新的一层的镜像内的<目标路径>位置 COPY src dest COPY [“src”, “dest”] VOLUME 容器数据卷,用于数据保存和持久化工作 CMD 指定一个容器启动时要运行的命令。 DockerFIle中可以有多个CMD指令,但只有最后一个生效,CMD会被docker run之后的参数替换。 ENTRYPOINT 指定一个容器启动时要运行的命令,ENTRYPOINT的目的和CMD一样,都是用于指定容器启动程序及参数。(不会被替换,追加) ONBUILD

linux docker创建容器教程

旧巷老猫 提交于 2020-01-14 15:31:48
linux docker创建容器教程 目录 1.docker镜像和容器区别: 2. 拉取镜像: 3. 运行镜像,即->开启容器: 4. docker内上网: 5. 安装各种软件: 6. 解决cv2的问题: 7. 设置python版本: 1.docker镜像和容器区别: 镜像是本地文件,容器是正在run运行的,需要将容器 save 或者 export 或者 commit 到本地,尽量不要覆盖原来的镜像; 2. 拉取镜像: docker pull ***镜像 docker images docker ps -a docker stop Container_Name 停止容器 docker rm Container_Name 删除容器 3. 运行镜像,即->开启容器: docker run --runtime=nvidia -v /home:/home -w /home/leilei -it --entrypoint bash -d --name cuda8.0-leilei -h pytorch0.3.1 --sym-size 32G nvidia/cuda:8.0-cudnn5.0-devel-ubuntu16.04 命令参数解析: --runtime 运行环境,nvidia代表可以使用显卡 -v 目录映射,共享目录; /root就是用户目录,cd->pwd就可以得到 -w 工作目录

docker常用命令

末鹿安然 提交于 2020-01-14 10:33:09
一、docker容器基本命令 1、查看docker版本 docker version 2、查看docker信息 docker info 3、docker帮助命令 docker --help 二、列出本地镜像命令 1、列出本地主机上的镜像、 docker images 2、列出本地所有镜像,含中间映像层 docker images -a 3、列出本地所有镜像,只显示镜像ID docker images -q 4、列出本地所有镜像,显示镜像摘要信息 docker images --digests 5、列出本地所有镜像,显示镜像完整信息 docker images --no-trunc 三、查找镜像命令 1、查询某个镜像,docker search 镜像名称 docker search hello-word 2、查询收藏数不小于指定值的镜像,docker search --filter=stars=30 镜像名称 docker search --filter=stars=30 hello-word 三、下载镜像命令 1、下载某个镜像,docker pull 镜像名称 docker pull hello-world 四、删除镜像命令 1、删除单个镜像,docker rmi -f 镜像ID docker rmi -f hello-world 2、删除多个镜像,docker rmi -f

Docker私有仓库的部署

橙三吉。 提交于 2020-01-14 07:18:07
一、Harbor Harbor 是 VMware 公司开源的企业级 Docker Registry 项目: (1)Harbor 的优势: 基于角色控制; 基于镜像的复制策略; 支持 LDAP / AD; 图像删除和垃圾收集; 图形 UI; 审计; RESTful API; (2)Harbor 架构组成: 1、Proxy:通过一个前置的反向代理统一接受浏览器,Docker客户端的请求,并将请求转发给后端不同的服务。 2、Registry:负责存储 Docker 镜像,并处理 docker push/pull 命令。 3、Core services:Harbor的核心功能,包括 UI、webhook、token 服务。 4、Database:为 core services 提供数据库服务。 5、Log collector:负责收集其他组件的 log,供日后进行分析。 二、私有仓库的优点: 其实,私有库的镜像最原始来源还是从公库中下载的,但是企业公司中为什么不都直接使用公库下载需要的镜像呢,允许使用 registry 搭建本地私有仓库,具备这些公库不具备的优点: 1、节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可; 2、提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用。 接下来,具备来搭建一下

docker私有仓库

夙愿已清 提交于 2020-01-14 07:16:45
Harbor介绍 部署Harbor所依赖的Docker Compose服务 部署Harbor服务 Harbor日常操作管理 Harbor管理生命周期 Harbor是VMware公司开源的企业级Docker Registry项目 Harbor的优势 基于角色控制 基于镜像的复制策略 支持LDAP/AD 图像删除和垃圾收集 图形UI 审计 RESTful API Proxy 通过一个前置的反向代理统一接受浏览器,Docker客户端的请求,并将请求转发给后端不同的服务 Registry 负责储存Docker镜像,并处理docker push/pull 命令 Core services Harbor的核心功能,包括UI,webhook,token 服务 Database 为core service提供数据库服务 Log collector 负责收集其他组件的log,供日后进行分析 Docker私有仓库架构拓扑 用户请求通过Proxy反向代理访问Core services,UI提供web界面,token令牌,你第一次登录之后服务器会给你一串序列号,下次直接登录就行,你需要下载的镜像信息,属性,都存放在后面的database,再通过webhook回调去registry私有仓库调取镜像。这一系列的操作都存放在日志中。 ------------------------------

Docker安全管理

邮差的信 提交于 2020-01-14 07:15:11
Docker安全管理——理论+操作 -------------------------------------------------Docker 容器与虚拟机的区别------------------------------------------------------ **1.隔离与共享** 虚拟机通过添加 Hypervisor 层,虚拟出网卡、内存、CPU 等虚拟硬件,再在其上建立 虚拟机,每个虚拟机都有自己的系统内核。 而 Docker 容器则是通过隔离的方式,将文件系 统、进程、设备、网络等资源进行隔离,再对权限、CPU 资源等进行控制,最终让容器之间互不影响, 容器无法影响宿主机。容器与宿主机共享内核、文件系统、硬件等资源。 #docker容器共享同一个内核资源,而虚拟机是独立的使用的资源都是独立的。 **2.性能与损耗** 与虚拟机相比,容器资源损耗要少。 同样的宿主机下,能够建立容器的数量要比虚拟 机多。但是,虚拟机的安全性要比容器稍好, 要从虚拟机破到宿主机或其他虚拟机,需要 先破 Hypervisor 层,这是极其困难的。而 docker 容器与宿主机共享内核、文件系统等资源, 更有可能对其他容器、宿主机产生影响。 #与虚拟机相比容器消耗资源要少的多,因为容器是共享内核的意味着,一个容器资源占用多,其他容器占用的就少,一个容器出现问题,其他容器都会出现问题