q666123 发表于 2018-5-30 11:06:40

在centos6.5上安装docker

  
Docker简介
Docker组成:
  

   1. Docker 服务器守护程序(server daemon),用于管理所有的容器。
  

   2. Docker 命令行客户端,用于控制服务器守护程序。
  

   3. Docker 镜像:查找和浏览 docker 容器镜像。它也访问这里得到:https://index.docker.io/
  

特性:
  

   文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。
  

   资源隔离:系统资源,像CPU和内存等可以分配到不同的容器中,使用cgroup。
  

   网络隔离:每个进程容器运行在自己的网络空间,虚拟接口和IP地址。
  

   日志记录:Docker将会收集和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索。
  

   变更管理:容器文件系统的变更可以提交到新的映像中,并可重复使用以创建更多的容器。无需使用模板或手动配置。
  

   交互式shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上,例如运行一个一次***互shell。
  

安装:
  

   epel源,CentOS6 .5或以上版本,内核2.6.32-431或以上版
  
  一、docker安装

  安装环境:虚拟机+Centos6.5
  在安装好centos6.5以后,可以使用这个脚本来使用国内的阿里云镜像源
#!/bin/bash
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum makecache  
1.1 取消selinux,因为它会干扰lxc的正常功能
sudo vim /etc/selinux/config
SELINUX=disabled
SELINUXTYPE=targeted
1.2 安装 Fedora EPEL
sudo yum install http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
1.3 添加 hop5 repo地址
cd /etc/yum.repos.d
sudo wget http://www.hop5.in/yum/el6/hop5.repo
1.4 安装docker
yum install docker-io
service docker start
chkconfig docker on1.5下载官方制作的CentOS6.4镜像

docker pull centos:latest

1.6 查看已经安装好的虚拟机

docker images

1.7 测试执行一个top命令


ID=$( docker run -d centos /usr/bin/top -b)
docker attach $ID

1.8 kill掉容器或停止容器


docker ps -a
docker stop $ID
###############
docker stop <CONTAINER ID>

1.9 进入虚拟机终端


docker run -i -t centos /bin/bash

1.10 docker也提供了在线搜索镜像模板功能,类似与puppet在线安装模板


docker search ubuntu
docker search centos
docker search debian

1.11 查看容器日志
docker logs -f <CONTAINER ID>

1.12 删除所有容器
docker rm $(docker ps -a -q)

1.13 删除镜像
docker rmi <image id/name>



二、 docker保存方式

有两种保存docker的container的方式
一是通过commit和push,将对centos这个image的修改提交,在本地的repository中形成一个新的镜像,然后可以将这个镜像提交到Docker的官方Index库中,以后如果要使用这个镜像的话,直接从官方的index下载即可。
二是通过save方法在本地保存一个tar压缩文件,这个.tar文件可以拷贝到其它装有Docker的机器,然后通过导入import,来恢复这个container。

第一种方式

第一步:commit

docker commit -author="your name <your email>" -m="your message" <Container ID> imagename:tag

Container ID就是刚才操作的那个container ID,另外imagename必须全部是小写,数字,下划线以及”.“的集合,不能大写或其实符号。tag就是这个image的标志,方便自己以后对这个image的改动做一个认知。
第二步:push

docker push imagename:tag

在pull之前Docker会要求你登录Docker的网站,所以在pull之前,你必须先到Docker注册你的用户名,然后就可以把你本地的image上传到官方的Index上面去了。

第二种方式

第一步:save

docker save container:tag > yourname.tar

第二步:import


docker import - yourname.tar
  
  三、 docker删除方式
  
  
  1.删除容器
###查看现在存在的docker容器
docker ps -a
  突然发现在不知不觉中已经创建了这么多容器,如果一个一个去删不知猴年马月才能删完了,用个简单的命令删掉
dp=`docker ps -a | awk {'print $1'} | tail -20`
docker rm ${dp}
2.删除镜像
###查看镜像
docker images
docker rmi centos6.5_wget 或者IMAGE ID出现以下错误,原来是有个容器还在这个镜像中创建的,要删除镜像,必须先把在这个镜像上创建的容器删掉才行



  

zhy1022wo 发表于 2018-8-13 09:35:13

赞!

beson2000 发表于 2019-1-8 20:38:50

谢谢分享
页: [1]
查看完整版本: 在centos6.5上安装docker