Docker容器学习
文章平均质量分 73
该专栏内容主要介绍docker容器学习过程的点滴
潇林
这个作者很懒,什么都没留下…
展开
-
docker 本地仓库创建 安装认证和应用(centos)
docker 的安装和仓库镜像容器拉取,参考之前的文档,这里默认已经安装了docker且拉取了镜像daocloud.io/registry:2.5[root@yj138 tomcat]# docker imagesREPOSITORY TAG ...原创 2018-12-29 15:21:00 · 378 阅读 · 0 评论 -
docker 构建本地私有镜像仓库(centos系统)
本文介绍,如何在本地局域网内,构建docker的私有仓库一、准备 首先,确保宿主机器已安装了docker环境(这里以1.7.0版本);第二,已经拉取了仓库进行,这里使用registry:2.5docker pull registry:2.5二、生成配置文件 生成配置文件,通过挂载方式,替换容器内的配置文件, 在宿主机器上,新建目录,自定义命名, 这里新建...原创 2018-12-11 16:30:15 · 739 阅读 · 0 评论 -
docker安装mysql的离线依赖包
在上一篇博客有介绍到 《docker容器内安装mysql 》是容器联网状态,且安装了apt-get工具,本文介绍离线状态下安装mysql. 一、依赖包获取1.1 mysql 下载地址 https://www.mysql.com/downloads/选择需要的版本, 这里选择的5.6.33,通用版,linux下64位1.2 cmake 下载地址 https://do...原创 2018-12-10 18:11:06 · 1241 阅读 · 0 评论 -
docker 使用mysql数据库,采用外部数据卷方式 在主机备份数据库
本文章主要介绍 如何使用数据卷,备份docker容器数据库的数据。默认宿主设备已安装好docker.一、准备阶段在宿主设备上创建目录,一个配置文件my.cnf。 目录将作为容器内数据库实际数据和日志数据的数据卷。创建完成后,如下所示[root@yj138 mysqlbak]# ls -a. .. data my.cnf[root@yj138 mysqlbak]# ...原创 2018-12-10 17:24:17 · 602 阅读 · 0 评论 -
docker 镜像的导出与导入
在使用功能docker过程中,我们不希望构建的镜像存储于网上,想寄存在本地内网的某个 docker daemon上,但是基础镜仍然需要从网络下载到本地,那么如何将下载的基础镜像,例如centos7 、mysql等,整体打包到文件,然后通过拷贝或者内网传输(ftp, scp ,sftp samba服务等)到另一台docker daemon 下,然后再导入到docker 文件系统中。一、...原创 2018-12-07 17:14:26 · 541 阅读 · 0 评论 -
docker环境变量设置
我们在运行docker容器应用程序时,需要使用特定的环境变量,并希望环境变量持久化生效,无非从dockerfile和容器入手,一、dockerfile 添加环境变量 (1) dockerfile ENV 设置环境变量,该方式直接将变量生成到镜像中ENV PATH=/usr/loca/mysql/bin:$PATH LD_LIBRARY_PATH=/usr/local/cu...原创 2018-11-30 16:54:04 · 28829 阅读 · 2 评论 -
docker容器内安装mysql
本文介绍docker 容器内安装 mysql安装环境 Ubuntu 16.04 docker-ce 18.09一、获取源码包下载地址 https://www.mysql.com/downloads/选择需要的版本, 这里选择的5.6.33,通用版,linux下64位启动容器并挂载安装包目录到容器内部目录run -tid --rm --dns 8.8.8...原创 2018-11-29 19:07:56 · 2379 阅读 · 0 评论 -
docker本地镜像上传到aliyun仓库
本文只要介绍本地docker镜像与阿里云镜像仓库的使用,本地创建镜像,上传到阿里云,一、获取阿里云镜像加速器地址 注册一个阿里云账号,登录,找到右上边的控制台在界面左侧,找到产品与服务--》 搜索 容器镜像服务点开 下面的 容器镜像服务则,每个账号都存在一个独立的加速器地址,根据下面的操作问题可 修改本地daemon.json , 然后重启dock...原创 2018-11-29 15:20:18 · 457 阅读 · 0 评论 -
docker容器网络配置之容器间的链接(默认桥接网络下的links)
一、 遗留的容器连接方式 --link --link是docker 的一个遗留的特征,最终可能被删除。除非绝对需要使用,不然,建议使用 user-defined network 建立容器间的连接。不同的是,使用--link,容器间可共享变量,而使用 user-defined 网络不行,但是也通过一种更可控方式实现容器间变量共享,例如数据卷。 本文章主要默认桥接网络下 容器间采用...原创 2018-11-27 17:23:38 · 1709 阅读 · 0 评论 -
docker网络模式之 default bridge模式
上文提到,docker的网络模式一共有五种,birdge 、host 、overlay、nacvlan、none、Network plugin 六种模式,这里主要介绍网桥(bridge)默认桥接模式。一、简介 在网络概念中,桥接网络是一种链路层设备,它在网络段之间转发通信。网桥是运行在主机内核上的一个硬件设备或者软件设备。在docker中,桥接网络是使用软件桥接,...原创 2018-11-23 11:05:39 · 1656 阅读 · 0 评论 -
docker daemon与containers配置
一、docker daemon 配置docker daemon是docker 守护进程,接收docker cli指令,操作docker对象(容器、镜像、网络等)。1.1 启动ipv6配置 使用ipv6支持容器与集群服务前,必须先使得docker daemon 启动ipv6,之后才能在容器、集群服务、网络中选择启动ipv4或ipv6,或者两种均启动。主要,该功能仅仅只能支持在linu...原创 2018-11-27 10:14:16 · 367 阅读 · 0 评论 -
docker网络模式之 user-defined bridge模式
上文提到默认的桥接网络模式下,容器之间连接的需要使用具体的ip地址,官方也不建议采用如此方式,建议采用用户自定义方式,构建容器间的桥接网络。一、自定义桥接网络和默认桥接网络区别 1、 用户自定义的桥接为容器间的隔离与互操作提供好更好的操作。 连接在同一个自定义的桥接网络下的容器,相互之间的端口全公开,无对外开发的端口,因此,运行容器应用程序之间更好地交互,不会对...原创 2018-11-23 17:11:18 · 1916 阅读 · 0 评论 -
docker网络模式之 overlay模式
Overlay网络模式,在多个docker daemon 主机之间穿件一个分布式的网络,该网络(overlay)位于docker主机层次之上,允许容器(同一集群服务的容器)之间加密通讯,因此,docker需要处理每一个主机(docker daemon)和每个分布的容器之间的包路由。 每当初始化一个集群或者添加一个docker主机到集群时,则在该主机上创建两个网络,...原创 2018-11-26 15:30:58 · 4364 阅读 · 0 评论 -
docker 网络模式之 macvlan模式
一、简介 一些程序,特别是应用程序或者网络流量监控程序,期望直接连接到物理网络,这种情况下,可使用Macvlan网络模式,给每个容器的虚拟网络接口配置一个mac地址,使得连接容器,看起来是直接到一个物理主机上。这种情况下,需要在主机上 为macvlan驱动,指定一个物理接口,一起子网与默认网关,甚至使用不同的物理网络接口,隔离navlan网络。但必须了解如下几点: ...原创 2018-11-26 16:50:58 · 2048 阅读 · 0 评论 -
docker网络模式之 host模式
如果为一个容器的网络模式 指定主机模式,则该容器的网络堆栈不与docker主机隔离,也即容器网络直接使用主机网络,例如,你运行一个容器,绑定了端口80,同时使用 host 网络,那么容器应用程序的80端口在主机IP上可适用,也即访问主机的80端口,会直接访问到容器应用程序的80端口。 主机网络驱动程序只在Linux主机上工作,在Mac的Docker、Windows的...原创 2018-11-26 15:54:23 · 9785 阅读 · 0 评论 -
docker网络模式之 none
如果想要在容器上完全禁用网络堆栈,可在创建容器时,使用标记 --network none ,那么创建的容器,仅一个回路设备,回路设备即允许用户以一个普通磁盘文件虚拟一个块设备。设想一个磁盘设备,对它的所有读写操作都将被重定向到读写一个名为 disk-image 的普通文件而非操作实际磁盘或分区的轨道和扇区。(当然,disk-image 必须存在于一个实际的磁盘上,而这个磁盘必须比...原创 2018-11-26 17:24:03 · 557 阅读 · 0 评论 -
docker 网络模式概述
一、概述 docker容器间通过网络互联,是使得docker容器与服务功能强大的原因之一,通过网络可将docker工作容器或者服务相互连接,或者将他们连接到一个没有分配工作任务的管理结点上,容器和服务甚至不用知道他们是否被部署在一个docker任务结点或者非任务结点上,也不用关心其他容器或者服务的部署情况,甚至不用关心是否运行在宿主机器上,以及运行环境是否为一个Linux系统或者win...原创 2018-11-22 16:13:14 · 247 阅读 · 0 评论 -
nvidia-docker版本及安装过程
一、nvidia-docker简单介绍 nvidia-docker 英伟达在docker之上开发的一套可以使用GPU的docker ,查看前面的介绍即可知道。通过调用yum deplist nvidia-docker, 查看依赖项。yum deplist nvidia-docker具体每项依赖的功能,下文接着讲。二、nvidia-docker安装 还是从安装开始...原创 2018-11-20 17:52:15 · 21065 阅读 · 0 评论 -
redhat 6.6 离线安装 docker 1.7.0
1、版本docker支持的版本,docker目前仅支持64位操作系统(1) centos7 主要针对 docker-ce docker-ce 17.3.0 及更高版本 (2) centos 6.5 及以上 可安装较低版本的docker 例如 docker-io 等 17.3.0 以下版本1.1 查看linux 系统版本[root@jxnx251 hado...原创 2018-12-07 15:02:00 · 756 阅读 · 0 评论 -
docker-ce版本与安装过程
一、docker版本介绍 docker由于前期不稳定,版本变化较大,但从1.13.x开始,采用时间线作为版本号,同时区分了企业版(ee)和社区版(ce),社区版免费提供给个人或者小型开发团体使用,而社区版提供额外的收费服务,例如经过官方测试认证过的基础设施、容器、插件等。 社区版按照stable和edge两种方式发布,每个季度更新stable版本,如17.06,17.09;...原创 2018-11-20 10:20:49 · 3025 阅读 · 0 评论 -
docker框架及模块介绍
一、 基本概念 首先,让我们回想,整个docker的安装流程,删除旧版本--》配置安装源--》安装依赖项--》安装docker --》注册成服务--》启动docker。这里我们学习下dockerder的基础框架 docker 采用CS架构,在宿主机器上,docker启用了一个服务端,也即docker的守护进程,服务端与客户端通过一个称为RESET API的网...原创 2018-11-21 17:15:15 · 791 阅读 · 0 评论 -
Docker使用的几个关键技术介绍
docker采用Go语言编写,而且采用部分linux内核特征实现共功能。docker容器采用沙盒机制,相互之间隔离,不存在访问接口。一、命名空间 namesapce docker引擎采用命名空间技术,为容器之间创建隔离层,为每一个容器定义一套不同的命名空间,通过命名空间访问容器每一部分,这就使得容器间相互隔离。docker引擎在linux上使用的命名空间有如下:...原创 2018-11-22 11:33:52 · 1092 阅读 · 0 评论 -
docker/nvidia-docker2 简单介绍
一、docker简介 docker 作为一个开源的应用容器引擎,允许开发者很方便地打包应用程序和依赖库到可移植的容器中,然后发布到任何流行的linux 设备上,docker完全使用沙箱机制,容器之间相互独立,不存在任何接口,因此,允许开发者在同一台机器上,运行不同环境的应用程序与服务,大大简化应用程序(或者服务)的运维操作,同时也提高了开发与测试效率。二、nvidia-docker...原创 2018-11-20 09:36:46 · 4439 阅读 · 0 评论 -
Docker 存储空间设置
在使用docker过程中,例如采用dockerfile构建镜像时,出现the device has no space to left. 提示设备空间不足,或者 docker commit 提交容器保存镜像时,提示空间不足,往往时由于生成的目标镜像的尺寸大于docker默认配置的值。如何获取Docker默认配置空间信息?docker system info 调用docker syst...原创 2019-09-05 16:36:49 · 1971 阅读 · 0 评论 -
docker 存储介绍
了解docker 构建和存储镜像与容器使用镜像方式,是高效使用存储驱动程序的前提,有助于选择应用程序最佳的存储方式,避免性能问题。存储驱动允许你在容器的可写层中创建数据,但容器删除后,数据不会持久化存储,同时容器内文件读写效率低于宿主设备的文件读写效率。一.镜像和层 镜像是由一系列层,采用叠加方式构成的,上层包含了下层镜像连接信息,每一层代表镜像Dockerfi...原创 2019-09-09 11:06:08 · 571 阅读 · 0 评论 -
Docker 存储启动程序选择
Docker 存储驱动程序选择 一般情况下,很少数据被写入到容器层,这通常采用数据卷挂载方式完成数据写操作。但是,部分情况下,需要向容器可写层写入数据,这便是存储驱动的作用。 Docker支持多种 可插入体系结构(支持本地的文件系统)的存储驱动程序。存储驱动控制决定着镜像和容器在docker 主机上的管理和存储方式。了解了docker存储概要后,下一步选择最佳的存储...原创 2019-09-09 17:06:33 · 362 阅读 · 0 评论 -
Docker内无法使用systemctl 手动启动 sshd服务
如何解决Docker容器使用 systemctl使用特权,同时,启动 /usr/sbin/initdocker run --privileged 其他参数 镜像版本 /usr/sbin/init如何便可解决,如何分配docker容器权限针对:Operation not permitted 相关问题使用 --cap-add/--cap-drop 开启/禁用 容...原创 2019-09-18 14:50:07 · 2331 阅读 · 0 评论