docker系统运维

  • 格式:pdf
  • 大小:542.51 KB
  • 文档页数:12

Docker手册
目录
1.简介 (3)
2.Docker (3)
2.1.安装 (3)
2.2.Docker常见命令 (9)
2.2.1.Options: (9)
mands: (10)
3.Docker镜像管理 (3)
3.1.搜索Docker镜像 (4)
3.2.查看Docker镜像 (4)
3.3.删除Docker镜像 (5)
3.4.导出Docker镜像 (5)
3.5.导入Docker镜像 (5)
3.6.获取Docker镜像 (5)
4.Docker容器管理 (6)
4.1.启动Docker容器 (6)
4.1.1.新建容器并启动 (6)
4.1.2.启动已终止容器 (7)
4.1.3.守护进程运行 (7)
4.1.4.停止容器 (8)
4.1.5.删除容器 (8)
4.1.6.进入容器 (8)
1.简介
Docker是通过内核虚拟化技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等。

由于Docker通过操作系统层的虚拟化实现隔离,所以Docker容器在运行时,不需要类似虚拟机VM额外的操作系统开销,提高资源利用率。

2.Docker
它只能用在64位的操作系统上。

2.1.安装
Docker软件包已经包括在默认的CentOS-Extras软件源里。

因此想要安装docker,只需要运行下面的yum命令:
yum install docker
查看docker版本信息:docker version
启动docker:systemctl start docker
加入开机自启动:systemctl enable docker
3.Docker镜像管理
Docker镜像就是一个只读的模板。

例如:一个镜像可以包含一个完整的CentOS操作系统环境,里面仅安装了Apache或用户需要的其
他应用程序。

3.1.搜索Docker镜像
docker search centos#搜索所有centos的docker镜像
3.2.查看Docker镜像
docker images#查看docker镜像
REPOSITORY(来自那个仓库)
TAG(标签)
IMAGE ID(唯一ID)
CREATED(创建时间)
VIRTUAL SIZE(大小)
3.3.删除Docker镜像
docker rmi imageID#删除docker镜像
3.4.导出Docker镜像
如果要导出镜像到本地文件,可以使用docker save命令。

docker save centos>/opt/centos.tar.gz#导出docker镜像至本地
3.5.导入Docker镜像
使用docker load从本地文件中导入到本地docker镜像库
docker load</opt/centos.tar.gz#导入本地镜像到docker镜像库
3.6.获取Docker镜像
使用docker pull命令来从仓库获取所需要的镜像。

下面的例子将从Docker Hub仓库下载一个Centos操作系统的镜像。

docker pull centos#获取centos镜像
运行一个Docker容器:
docker run-it centos/bin/bash#完成后可以使用该镜像创建一个容器
CentOS容器已经被启动,并且我们得到了bash提示符
操作系统的容器
cat/etc/redhat-release
退出容器:Exit
4.Docker容器管理
4.1.启动Docker容器
启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容器重新启动。

4.1.1.新建容器并启动
docker run centos/bin/echo“hehe”
#这跟在本地直接执行/bin/echo’hehe’命令输出一个hehe,之
后终止容器。

docker ps-a#查看是否启动
docker run-it centos/bin/bash#启动一个bash终端,允许用户进行交互。

4.1.2.启动已终止容器
docker start1c6c3f38ea07#启动一个终止的容器
docker ps#查看正在运行的docker容器
docker rename kickass_goldwasser mydocker:重新命名:docker rename oldName newName
4.1.3.守护进程运行
Docker容器在后台以守护形式运行。

此时可以通过添加-d参数来实现。

docker run-d centos/bin/bash
4.1.4.停止容器
docker stop961fd1162c2f#停止容器
4.1.
5.删除容器
docker rm c599b569f387#删除已经停止的容器
docker rm-f302f39c202c9#删除正在运行的容器
4.1.6.进入容器
4.1.6.1.attach命令
docker attach867e6627a194#通过docker attach进入
使用attach命令有时候并不方便。

当多个窗口同时attach到同一个容器的时候,所有的窗口都会同步显示,当某个窗口因命令阻塞时,其他窗口也无法执行操作了。

4.1.6.2.nsenter命令
nsenter可以访问另一个进程的名字空间。

nsenter需要有root权限。

yum install-y util-linux#安装包中有需要用到的nsenter docker ps-a
docker start867e6627a194#启动已经关闭的容器
docker inspect–format“{{.State.Pid}}”867e6627a194#找到容器的第一个进程PID
nsenter-t20012-u-i-n-p#通过这个PID连接到容器5.Docker常见命令
docker-h
5.1.Options:
–config=~/.docker#客户端配置文件的位置
-D,–debug=false启用Debug调试模式
-H,–host=[]守护进程的套接字(Socket)连接
-h,–help=false打印使用
-l,–log-level=info设置日志级别
–tls=false信任证书签名CA
–tlscert=~/.docker/cert.pem TLS证书文件路径
–tlskey=~/.docker/key.pem TLS密钥文件路径
–tlsverify=false使用TLS验证远程
-v,–version=false打印版本信息并退出
mands:
attach当前shell下attach连接指定运行镜像
build通过Dockerfile定制镜像
commit提交当前容器为新的镜像
cp从容器中拷贝指定文件或者目录到宿主机中
create创建一个新的容器,同run但不启动容器
diff查看docker容器变化
events从docker服务获取容器实时事件
exec在已存在的容器上运行命令
export导出容器的内容流作为一个tar归档文件(对
应import)
history展示一个镜像形成历史
images列出系统当前镜像
import从tar包中的内容创建一个新的文件系统映像(对应export)
info显示系统相关信息
inspect查看容器详细信息
kill kill指定docker容器
load从一个tar包中加载一个镜像(对应save)
login注册或者登陆一个docker源服务器
logout从当前Docker registry退出
logs输出当前容器日志信息
pause暂停容器
port查看映射端口对应的容器内部源端口
ps列出容器列表
pull从docker镜像源服务器拉取指定镜像或者库镜像
push推送指定镜像或者库镜像至docker源服务器
rename重命名容器
restart重启运行的容器
rm移除一个或者多个容器
rmi移除一个或多个镜像(无容器使用该镜像才可以删除,否则需要删除相关容器才可以继续或者-f强制删除)
run创建一个新的容器并运行一个命令
save保存一个镜像为一个tar包(对应load)
search
start启动容器
stats统计容器使用资源
stop停止容器
tag给源中镜像打标签
top查看容器中运行的进程信息unpause取消暂停容器
version查看容器版本号
wait截取容器停止时的退出状态值。