安装要求
linux内核要求
uname -a, uname -r
Centos要求kernel版本必须2.6.32-431或更高,也就是Centos 6.5或者更高版本。
device maper
检查device maper是否安装
root@ads ~]# grep device-mapper /proc/devices
253 device-mapper
安装
只支持64位CPU架构的计算机(X86_64, amd64)
linux:
Docker
Windows/OS X:
Boot2Docker
Ubuntu安装实例
前提条件:
Ubuntu 14.04
安装:
wget -qO- https://get.docker.com/ | sh
第一个docker
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
curl -s https://get.docker.io/ubuntu/ | sh
docker pull ubuntu
apt-key命令用于管理Debian Linux系统中的软件包密钥。每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。
但是上面还是没下载成功,于是从其他docker镜像地址下了个镜像:
docker pull index.tenxcloud.com/tenxcloud/ubuntu
docker images
docker run -i -t index.tenxcloud.com/tenxcloud/ubuntu /bin/bash
docker run -i -t -d --dns=172.25.0.4 index.tenxcloud.com/tenxcloud/ubuntu /bin/bash
这样一个容器就启动了,进入容器的shell:
root@ba67850c3deb:/#
可以输入exit来退出容器,退出后容器也停止了。可以通过docker ps -a看到容器状态
如下操作,退出后,可以重新启动容器。attach可以让多人同时进入容器,但是任一个人输入exit后,所有人都会退出
root@ba67850c3deb:/# exit
exit
root@dt:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba67850c3deb index.tenxcloud.com/tenxcloud/ubuntu "/bin/bash" 57 minutes ago Exited (0) 2 seconds ago reverent_babbage
root@dt:~# docker start ba67850c3deb
ba67850c3deb
root@dt:~# docker attach ba67850c3deb
root@ba67850c3deb:/#
容器
交互式容器 interactive container
守护式容器 daemonized container
进阶
容器启动
- 指定镜像启动容器
docker run -i -t index.tenxcloud.com/tenxcloud/ubuntu /bin/bash
docker images后可以看到镜像index.tenxcloud.com/tenxcloud/ubuntu,上面命令可以特定运行此镜像 - 配置dns服务器
docker run -i -t -d --dns=172.25.0.4 index.tenxcloud.com/tenxcloud/ubuntu /bin/bash
指定dns服务器为172.25.0.4,当然,dns服务器可以设定为列表 - 删除container
docker rm ba67850c3deb - 在容器中启动一个新任务
docker exec -t -i 93b820a4fa46 /bin/bash
上面命令,相当于在容器中又启动一个/bin/bash的交互式任务。执行后,会弹出bash终端。
在这个终端上操作,不会影响该容器其他的交互式终端,及时在这里输入exit退出,其他的也不影响。
这个要支持exec命令,说是只有docker 1.3以后才支持
命令
docker search tutorial 搜索docker镜像
docker version 查看docker版本
service docker status 查看状态
docker images 列出镜像
docker search ubuntu 查找docker hub上公共的可用镜像
docker info docker信息
docker ps -a 查看当前系统中容器的列表
docker run --help docker rm --help 查看某一命令的参数
docker logs ba67850c3deb 可以把这个容器所有的操作都打出来,包括exit以前的等等
docker exec -t -i 93b820a4fa46 /bin/bash 在容器中启动一个新任务
docker load < test.tgz 加载一个本地镜像文件
docker rmi -f 93b820a4fa46 强制删除一个镜像容器
其他注意
非root用户要使用docker,需要将用户添加进docker群组
sudo usermod -a -G docker $USER
If you would like to use Docker as a non-root user, you should now consider
adding your user to the “docker” group with something like:
sudo usermod -aG docker your-user
问题
dns
宿主机可以ping通baidu
但是docker里只能ping通内网ip
Docker容器资源管理
http://www.open-open.com/lib/view/open1425565035056.html

本文介绍了Docker在Linux环境下的安装要求,包括内核版本、依赖组件等,并提供了Ubuntu系统的具体安装步骤及示例。此外,还详细讲解了如何使用Docker运行容器、配置DNS服务器、启动和管理容器等基本操作。

被折叠的 条评论
为什么被折叠?



