文章目录
在RedHat/CentOS环境下安装Docker。官方文档要求Linux kernel至少3.8以上,且docker只能运行在64位的系统中。由于RHEL6和CentOS6的内核版本为2.6,因此必须要先升级内核。
下面以CentOS6.5(64位)为例,介绍下docker安装步骤和使用方法:
一、升级内核(带aufs模块)
1、yum安装带aufs模块的3.10内核
cd /etc/yum.repos.d wget yum install kernel-ml-aufs kernel-ml-aufs-devel
2、修改grub的主配置文件/etc/grub.conf,设置default=0,表示第一个title下的内容为默认启动的kernel(一般新安装的内核在第一个位置)。
3、重启系统,这时候你的内核就成功升级了。
# uname -a Linux ugate1 3.10.5-3.el6.x86_64 查看内核是否支持aufs: #grep aufs /proc/filesystemsnodev aufs
二、安装docker
1、首先关闭selinux:
#setenforce 0 #sed -i '/^SELINUX=/c\SELINUX=disabled' /etc/selinux/config
2、在Fedora EPEL源中已经提供了docker-io包,下载安装epel:
#rpm -ivh #sed -i 's/^mirrorlist=https/mirrorlist=http/' /etc/yum.repos.d/epel.repo
3、yum安装docker-io:
yum -y install docker-io
4、启动docker:
#service docker start
5、查看版本
#docker version Client version: 1.7.1 Client API version: 1.19 Go version (client): go1.4.2 Git commit (client): 786b29d/1.7.1 OS/Arch (client): linux/amd64 Server version: 1.7.1 Server API version: 1.19 Go version (server): go1.4.2 Git commit (server): 786b29d/1.7.1 OS/Arch (server): linux/amd64
三、制作镜像
1、制作centos基本镜像
安装制作CentOS镜像的工具:
yum -y install febootstrap
cd /home mkdir dockerimages cd dockerimages febootstrap -i bash -i wget -i yum -i iputils -i iproute -i man -i vim-minimal -i openssh-server -i openssh-clients centos6 centos6-image http://mirrors.aliyun.com/centos/6/os/x86_64/
制作Docker镜像,镜像名字是centos6-base
cd centos6-image && tar -c .|docker import - centos6-base 3dee92bbd968a726225b9792dbae31716ad47c98a29a6b6b5d8f615da7427fe2 # docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centos6-base latest 3dee92bbd968 8 seconds ago 333.6 MB
测试镜像运行
# docker run centos6-base cat /etc/redhat-release CentOS release 6.8 (Final)
制作可以ssh登陆的Docker镜像,名字是centos6-ssh
创建Dockerfile
vi Dockerfile #Dockerfile FROM centos6-base MAINTAINER ruild <rld_1981@163.com> RUN yum install -y openssh-server RUN ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key RUN ssh-keygen -q -N "" -t rsa -f /etc/ssh/ssh_host_rsa_key RUN sed -ri 's/session required pam_loginuid.so/#session \ required pam_loginuid.so/g' /etc/pam.d/sshd RUN mkdir -p /root/.ssh && chown root.root /root && chmod 700 /root/.ssh EXPOSE 22 RUN echo 'root:123456' | chpasswd ENV LANG en_US.UTF-8 ENV LC_ALL en_US.UTF-8 CMD /usr/sbin/sshd -D End
创建build image
docker build -t centos6-ssh . dcoker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE centos6-ssh latest 71faad8d24c9 17 minutes ago 372.3 MB centos6-base latest 3dee92bbd968 31 minutes ago 333.6 MB
测试
# docker run -d -P centos6-ssh 264c1ba68561213d7fac23c0e714bfb073bc22bbd47235508cae6f3f29898bed
# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 264c1ba68561 centos6-ssh "/bin/sh -c '/usr/sb 3 seconds ago Up 2 seconds 0.0.0.0:32768->22/tcp modest_bell
# ssh -p 32768 127.0.0.1 password: -bash-4.1# ls -bash-4.1# cat /etc/redhat-release CentOS release 6.8 (Final)
四、附docker常用命令
docker -v #查看docker版本
docker info #查看docker具体信息
docker pull centos?#下载centos image
docker images #显示已有image
docker rmi? imageid #删除image
sudo usermod -a -G docker wisely #非root用户使用
docker run -i -t centos /bin/bash #启动系统
docker stop $(docker ps -a -q) #停止所有容器
docker rm $(docker ps -a -q) #删除所有container
docker rmi $(docker images -q) #删除所有image
docker inspect container_name #查看容器信息
docker inspect container_name | grep IPAddress #查看当前容器ip地地址
原文链接:centos6下docker安装和配置,转载请注明来源!