背景
一年前就听说了Docker,想用它做虚拟机,今天终于有机会付诸实践了。
我这里使用的是64位 ubuntu 14.04。想虚拟出4台设备,分别安装软件,进行集群测试。
由于Linux容器的bug,docker在Linux的kernel3.8上运行最佳。
环境检查及安装
看下我们的Ubuntu版本命令:
复制代码 代码如下:cat /etc/issue Ubuntu 14.04.5 LTS \n \l
再来看下内核,命令:
uname -r 3.2.0-67-generic
由于内核没有达到要求,我们接下来用下面的命令升级内核:
复制代码 代码如下:apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raringsudo
复制代码 代码如下:apt-get install --install-recommends linux-generic-lts-raring xserver-xorg-lts-raring libgl1-mesa-glx-lts-raring
注意:升级后需要重启ubuntu.#重启后检查内核版本。
*******如果上述升级内核方法无法升级,参考如下方法:
Ubuntu 14.04 用户怎样安装 Kernel 3.14 内核 *(安装方法,直接下载DEB安装包,使用以下命令)
32 位系统安装命令
下载安装包:
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-headers-3.14.0-031400_3.14.0-031400.201403310035_all.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-headers-3.14.0-031400-generic_3.14.0-031400.201403310035_i386.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-image-3.14.0-031400-generic_3.14.0-031400.201403310035_i386.deb
安装:
复制代码 代码如下:sudo dpkg -i linux-headers-3.14*.deb linux-image-3.14*.deb
64 位系统安装命令
下载安装包:
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-headers-3.14.0-031400_3.14.0-031400.201403310035_all.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-headers-3.14.0-031400-generic_3.14.0-031400.201403310035_amd64.deb
wget kernel.ubuntu.com/~kernel-ppa/mainline/v3.14-trusty/linux-image-3.14.0-031400-generic_3.14.0-031400.201403310035_amd64.deb
安装:
复制代码 代码如下:sudo dpkg -i linux-headers-3.14*.deb linux-image-3.14*.deb
********
安装部署docker
更新下源:
vim /etc/apt/sources.list
使用以下阿里源:
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
升级并安装:
apt-get update apt-get install docker.io service docker.io restart
启动
root@linuxidc:~#docker run -i -t ubuntu /bin/bash Cannot connect to the Docker daemon. Is 'docker -d' running on this host? root@iZ28ikebrg6Z:~# docker -d
出现如下错误:
root@iZ28ikebrg6Z:~# docker -d
Could not find a free IP address range for interface 'docker0'. Please configure its address manually and run 'docker -b docker0'
然后我们只需要输入:
复制代码 代码如下:root@linuxidc:~#sudo route del -net 172.16.0.0 netmask 255.240.0.0
注意这里,每次重启后都要执行上面这条命令,制定子网掩码。
再执行 docker -d 启动OK说明docker安装完毕并启动成功。
创建容器及使用
docker pull ubuntu #此处是从官网拉取名为ubuntu的image docker images 查看拉取下来的镜像,注意:REPOSITORY:TAG后边启动使用 docker run -i -t ubuntu:latest /bin/bash #创建一个容器,-t是临时终端。 docker run -dit [CONTAINER_NAME or CONTAINER_ID]#交互式启动 run -d ubuntu:latest /bin/bash #后台启动。 //TIPS:退出时,使用[ctrl + D]或exit,这样会结束docker当前线程,容器结束。 //可以同时使用[ctrl + P][ctrl + Q]退出而不终止容器运行 docker exec -it [CONTAINER_NAME or CONTAINER_ID] /bin/bash #会在指定容器中执行指定命令。 docker rename CONTAINER_NAME new_name #给容器重命名 docker rm CONTAINER_ID #删除容器 docker accach CONTAINER_NAME #进入某个后台容器 run -d -p 50001:22 ubuntu:latest /bin/bash #创建端口映射从50001到容器的22端口,然后登陆安装ssh
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)