看了网上的安装后出现的错误
引用
Cannot connect to the Docker daemon. Is 'docker -d' running on this host?
出现错误的问题是意外断电等造成的设备没有正常退出,留下的lck文件影响正常启动
---- 前置条件 ----
查看内核
uname -r
低于3.8的内核需要升级
centos升级方法
添加内核源
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
-- 弃用 rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm
yum -y --enablerepo=elrepo-kernel install kernel-lt
手动下载内核只能另存为
https://www.kernel.org/
https://cdn.kernel.org/pub/linux/kernel/v3.x/linux-3.10.105.tar.xz
https://mirrors.tuna.tsinghua.edu.cn/elrepo/kernel/el6/x86_64/RPMS/
修改
vi /etc/grub.conf
将default=1修改为default=0 (根据实际显示的去修改,默认新安装的会是0)
添加软件源
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
安装Docker
yum -y install docker-io
yum -y install device-mapper
修改配置文件(详细看最后的容器运行环境)
vi /etc/sysconfig/docker
other-args列更改为:other_args="--exec-driver=lxc --selinux-enabled"
---- 会出错的部分 ---- 由于不正常关机会导致Docker异常,需要手动处理
执行
/etc/init.d/docker status
返回
docker dead but subsys locked
需要删除 pid,sock
\rm /var/run/docker.*
\rm /var/lock/subsys/docker
执行
/etc/init.d/docker status
返回
docker is stopped
----
查看版本号
docker version
启动服务
service docker start
下载centos 和 ubuntu
docker pull centos
docker pull ubuntu
查看已有镜像
docker images
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest 24c85647b066 35 hours ago 117.2 MB
centos latest 6cc2eba34ef6 7 days ago 192.5 MB
下载文件位置
/var/lib/docker/
查看
/var/lib/docker/devicemapper/devicemapper
可以看到默认100G的data文件和2G的metadata文件,然而到了这个目录执行
du -h
可以看到
[root@localhost devicemapper]# du -h
639M .
占用空间是根据使用逐渐变大的,并不是一次性开销
访问容器内系统
可以进入容器,所以如果能访问docker主机,ssh就不用了
docker exec -it CONTAINER_ID /bin/bash
运行jenkins
先修改映射文件的权限在启动容器
chown -R 1000:1000 /home/docker/jenkins
docker run -p 8090:8080 -p 50001:50000 -v /home/docker/jenkins:/var/jenkins_home jenkins
后台运行
docker run -d -p 8090:8080 -p 50001:50000 -v /home/docker/jenkins:/var/jenkins_home jenkins
运行 对外端口:容器内端口 当前文件目录:容器内文件目录 容器
停止
docker stop CPID
进入容器
docker exec -it ${CPID} /bin/bash
获取CPID
docker ps
获取jenkins的运行id
docker ps|awk 'NR>1'|grep jenkins|awk '{print $1}'
---------- 分割线 ----------
【导入导出】 参考
http://blog.csdn.net/a906998248/article/details/46236687
使用 docker ps -a 查看本机已有的容器(使用NAMES字段的值xxxx)
导出 export docker export xxxx > /home/xxxx-export-20170414.tar
导入 import docker import - /home/xxxx-export-20170414.tar
使用 docker images 查看本机已有镜像(使用IMAGE ID字段的值123456)
保存 save docker save 123456 > /home/ubuntu-save-20170414.tar
加载 load docker load < /home/ubuntu-save-20170414.tar
区别:
export 导出的镜像文件大小 小于 save保存的镜像
export 导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作(docker tag <LAYER ID> <IMAGE NAME>);而save保存(load加载)的镜像,没有丢失镜像的历史,可以回滚到之前的层(layer)。
(查看方式:docker images --tree)
导入加载进来觉得不合适可以使用 docker rm 容器ID 、 docker rmi 镜像ID 来删掉。
【删除所有的容器】
引用
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)
【查看root密码】
docker容器启动时的root用户的密码是随机分配的。所以,通过这种方式就可以得到容器的root用户的密码了。
docker logs 5817938c3f6e 2>&1 | grep 'User: ' | tail -n1
---- 我是分割线 ----
大搬运
http://www.jingyuyun.com/article/13953.html
容器核心技术是指能够让 container 在 host 上运行起来的那些技术。
这些技术包括容器规范、容器 runtime、容器管理工具、容器定义工具、Registry 以及 容器 OS,下面分别介绍。
【容器规范】
容器不光是 Docker,还有其他容器,比如 CoreOS 的 rkt。为了保证容器生态的健康发展,保证不同容器之间能够兼容,包含 Docker、CoreOS、Google在内的若干公司共同成立了一个叫 Open Container Initiative(OCI) 的组织,其目是制定开放的容器规范。
目前 OCI 发布了两个规范:runtime spec 和 image format spec。
有了这两个规范,不同组织和厂商开发的容器能够在不同的 runtime 上运行。这样就保证了容器的可移植性和互操作性。
【容器运行环境 runtime】
runtime 是容器真正运行的地方。runtime 需要跟操作系统 kernel 紧密协作,为容器提供运行环境。
如果大家用过 Java,可以这样来理解 runtime 与容器的关系:
Java 程序就好比是容器,JVM 则好比是 runtime。JVM 为 Java 程序提供运行环境。同样的道理,容器只有在 runtime 中才能运行。
lxc、runc 和 rkt 是目前主流的三种容器 runtime。
lxc 是 Linux 上老牌的容器 runtime。Docker 最初也是用 lxc 作为 runtime。
runc 是 Docker 自己开发的容器 runtime,符合 oci 规范,也是现在 Docker 的默认 runtime。
rkt 是 CoreOS 开发的容器 runtime,符合 oci 规范,因而能够运行 Docker 的容器。
【容器定义工具】
容器定义工具允许用户定义容器的内容和属性,这样容器就能够被保存,共享和重建。
docker image 是 docker 容器的模板,runtime 依据 docker image 创建容器。
dockerfile 是包含若干命令的文本文件,可以通过这些命令创建出 docker image。
ACI (App Container Image) 与 docker image 类似,只不过它是由 CoreOS 开发的 rkt 容器的 image 格式。
【Registry】
容器是通过 image 创建的,需要有一个仓库来统一存放 image,这个仓库就叫做 Registry。
企业可以用 Docker Registry 构建私有的 Registry。
Docker Hub(https://hub.docker.com) 是 Docker 为公众提供的托管 Registry,上面有很多现成的 image,为 Docker 用户提供了极大的便利。
Quay.io(https://quay.io/)是另一个公共托管 Registry,提供与 Docker Hub 类似的服务。
【容器 OS】
由于有容器 runtime,几乎所有的 Linux、MAC OS 和 Windows 都可以运行容器。但这不并没有妨碍容器 OS 的问世。
容器 OS 是专门运行容器的操作系统。与常规 OS 相比,容器 OS 通常体积更小,启动更快。因为是为容器定制的 OS,通常它们运行容器的效率会更高。
目前已经存在不少容器 OS,CoreOS、atomic 和 ubuntu core 是其中的杰出代表。
分享到:
相关推荐
Centos6.5 下Docker的安装与简单配置。。。。。。。。
CentOS 6.5 下Docker 镜像和仓库 调试过程 及依赖kernel包
文件夹下还有:docker-engine-1.7.1-1.el6.x86_64.rpm 这个如果是centos6的时候用 5、启动docker服务并查看docker版本 # service docker start Starting docker (via systemctl): [ OK ] # docker -v Docker ...
### Centos6.5镜像文件下载与安装详解 #### 一、CentOS 6.5简介 CentOS是Community ENTerprise Operating System的缩写,是一个基于Linux内核的操作系统,它主要提供了企业级的计算环境。CentOS 6.5作为CentOS 6...
centos 6.5 telnet 客户端 安装文件 rpm包 centos 6.5 telnet 服务端 安装文件 rpm包 http://vault.centos.org/6.5/os/x86_64/Packages/ 从官网下载亲测可以用
本文档包含centos6.5版本的Linux系统上安装docker的详细过程及方法
在redhat6.5离线安装docker1.7所需要rpm包
本文将详细介绍如何在CentOS 6.5上进行MySQL 5.6的一键安装过程,包括必要的环境准备、安装步骤、配置优化以及安全设置。 一、环境准备 在开始安装之前,确保你的CentOS 6.5系统已经更新到最新,运行以下命令进行...
centos6.5内核版本太低,docker必须在3.x上安装,yum install -y kernel-ml-aufs kernel-ml-aufs-devel vim /etc/grub.conf 修改/etc/grub.conf里default=0, reboot 重启系统
在Linux系统,特别是CentOS 6.5这样的老版本中,进行离线安装SVN(Subversion)是一项挑战,因为通常需要手动下载依赖并解决网络连接问题。以下是一份详细的步骤指南,帮助你理解如何在没有互联网连接的情况下完成这...
### CentOS 6.5 for Oracle 的安装与配置详解 #### 一、概述 本文将详细介绍如何在服务器上安装并配置CentOS 6.5系统,特别是针对Oracle数据库环境的优化和配置方法。CentOS 6.5是一款稳定且广泛使用的Linux发行版...
centos6.5 邮件服务器安装视频 自己录制
centos 6.5下的文件上传下载服务安装和配置 centos 6.5下的文件上传下载服务是指在centos 6.5操作系统中安装和配置文件上传下载服务,以解决上传和下载文件的问题。这个服务可以让用户轻松地上传和下载文件,而不...
CentOs6.5镜像源
在本案例中,我们有"CentOS6.5离线安装openssh8.6p1软件包-步骤及依赖.rar"这个压缩包文件,它应该包含了openssh 8.6p1以及所有必需的依赖项。在拥有互联网连接的机器上,你需要访问OpenSSH的官方网站或者通过yum...
在CentOS6.5系统下安装CDH5.8.2,首先需要准备三台虚拟机,分别安装CentOS6.5系统。然后,需要修改主机名分别为hadoop01/hadoop02/hadoop03。修改主机名的方法有两种:一种是使用setup命令,另一种是修改vim /etc/...
CentOS 6.5 安装教程详解 CentOS 6.5 是一个稳定、功能强大且广泛应用的 Linux 发行版,本文将详细介绍 CentOS 6.5 的安装步骤,包括虚拟机的安装、CentOS 镜像文件的下载和使用、连接工具的配置等内容。 一、...
CentOS6.5下YUM安装最新MySQL5.7.12
资源名称:CentOS 6.5 x64下安装19实体节点Hadoop 2.2.0集群配置指南内容简介: CentOS 6.5 x64下安装19实体节点Hadoop 2.2.0集群配置指南主要讲述的是CentOS 6.5 x64下安装19实体节点Hadoop 2.2.0集群配置指南;...