docker的基础知识[1]

来源:互联网 发布:广东粤数大数据忽悠 编辑:程序博客网 时间:2024/06/06 19:21

前言

本次使用的环境为rhel3.10.0-229.el7.x86_64

安装和启动docker

yum install docker-engine-1.8.3-1.el7.centos.x86_64 -y #安装
systemctl start docker #启动

查看docker信息

docker version #查看docker版本

123456789101112131415
Client: Version:      1.8.3 API version:  1.20 Go version:   go1.4.2 Git commit:   f4bf5c7 Built:        Mon Oct 12 06:06:01 UTC 2015 OS/Arch:      linux/amd64Server: Version:      1.8.3 API version:  1.20 Go version:   go1.4.2 Git commit:   f4bf5c7 Built:        Mon Oct 12 06:06:01 UTC 2015 OS/Arch:      linux/amd64

docker info #查看docker系统信息

加载平台镜像

我们可以从公有的docker仓库Docker Hub上下载所需镜像也可以从自己或别人的docker镜像仓库中下载

加载镜像

docker load -i rhel7.tar

列出镜像

docker images

12
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZErhel7               latest              e1f5733f050b        23 months ago       140.2 MB

检索镜像

docker search image_name

下载镜像

docker pull image_name

删除镜像

docker rmi image_name

显示一个镜像的改动历史

docker history image_name

运行docker容器

非交互式在容器中运行命令:

docker run --rm rhel7 cat /etc/hosts rm参数的意义可以通过docker run –help 来查询(Automatically remove the container when it exits,在运行完指定指令后立即删除此容器)

交互式运行容器

docker run -it rhel7 bash # -i -t 参数可自行查询

列出容器

docker ps -a ##列出所有系统容器
docker ps ##列出正在运行的容器
docker ps -l ##列出最近一次启动的容器

重启停止运行的容器

docker start container_name

重新连接还在运行的容器

docker attach container_name

删除容器

docker rm container_Name/ID / docker rm ’docker ps -a -q ‘ (删除所有容器)

停止,启动,杀死容器

docker stop container_Name/ID
docker start container_Name/ID
docker kill container_Name/ID

查看容器的详细信息

docker inspect vm1

从一个容器中获取日志

docker logs container_Name/ID

列出容器中被改变的文件

docker diff container_Name/ID

123456789
C /etc                             #C代表被改变的C /etc/yum.repos.dA /etc/yum.repos.d/dvd.repo        #A代表增加的D /etc/yum.repos.d/rhel7.repo      #D代表被删除的C /varC /var/cacheC /var/cache/yumA /var/cache/yum/x86_64A /var/cache/yum/x86_64/7Server

显示一个运行的容器里面的进程信息

docker top container_Name/ID

从容器里面拷贝文件/目录到本地一个路径,或相反

docker cp Name/ID:/container_path to_path #或相反

创建docker镜像

docker commit vm1 rhel7:v1 #vm1:容器名 rhel7:镜像名 v1:版本号
docker images #查看

123
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZErhel7               v1                  eb4cf1bf36a5        7 seconds ago       229.4 MBrhel7               latest              e1f5733f050b        23 months ago       140.2 MB

输出镜像到文件

docker save --output=rhel7-v1.tar rhel7:v1
tar -tf rhel7-v1.tar # 查看

e1f5733f050b2488a17b7630cb038bfbea8b7bdfa9bdfb99e63a33117e28d02f/e1f5733f050b2488a17b7630cb038bfbea8b7bdfa9bdfb99e63a33117e28d02f/VERSIONe1f5733f050b2488a17b7630cb038bfbea8b7bdfa9bdfb99e63a33117e28d02f/jsone1f5733f050b2488a17b7630cb038bfbea8b7bdfa9bdfb99e63a33117e28d02f/layer.tareb4cf1bf36a5e25d5cb0fc023ac6c06c416b927652dbec95c7f25a610cc79cf9/eb4cf1bf36a5e25d5cb0fc023ac6c06c416b927652dbec95c7f25a610cc79cf9/VERSIONeb4cf1bf36a5e25d5cb0fc023ac6c06c416b927652dbec95c7f25a610cc79cf9/jsoneb4cf1bf36a5e25d5cb0fc023ac6c06c416b927652dbec95c7f25a610cc79cf9/layer.tarrepositories

此文件包含了镜像重建所必须的所有层,可以把它拷贝到其他docker主机,使用docker load加载

感谢阅读,欢迎指正。

0 0