docker基础用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker基础用法相关的知识,希望对你有一定的参考价值。
docker基础用法
什么是docker
docker中的容器:
- lxc --> libcontainer --> runC
OCI&OCF
OCI
Open Container-initiative
- 由Linux基金会主导于2015年6月创立
- 旨在围绕容器格式和运行时制定一个开放的工业化标准
- 包含两个规格:
- 运行时规范(runtime-spec)
-
形象规范(image-spec)
OCF
Open Container Format
runC是一个CLI工具,用于根据OCI规范生成和运行容器 - 容器作为runC的子进程启动,可以嵌入到各种其他系统中,而无需运行守护进程
- runC构建在libcontainer之上,相同的容器技术支持数百万个Docker引擎安装
docker提供了一个专门容纳容器镜像的站点: https://hub.docker.com.
docker架构
docker镜像与镜像仓库
为什么镜像仓库名字是Registry而不是repository?在docker中仓库的名字是以应用的名称取名的。
镜像是静态的,而容器是动态的,容器有其生命周期,镜像与容器的关系类似于程序与进程的关系。镜像类似于文件系统中的程序文件,而容器则类似于将一个程序运行起来的状态,也即进程。所以容器是可以删除的,容器被删除后其镜像是不会被删除的。
docker对象
当您使用docker时,您正在创建和使用镜像、容器、网络、卷、插件和其他对象。
- 镜像
- 镜像是一个只读模板,带有创建docker容器的指令。
- 镜像通常基于另一个映像,还需要进行一些额外的定制。
- 你可以创建自己的镜像,也可以只使用其他人创建并发布在注册表中的镜像。
- 容器
- 容器是镜像的可运行实例。
- 您可以使用docker API或CLI创建、运行、停止、移动或删除容器。
- 您可以将一个容器连接到一个或多个网络,将存储附加到它,甚至根据它的当前状态创建一个新镜像。
安装及使用docker
docker安装
cd /etc/yum.repos.d/ curl -o docker-ce.repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo sed -i ‘s@https://download.docker.com@https://mirrors.tuna.tsinghua.edu.cn/docker-ce@g‘ docker-ce.repo
yum -y install docker-ce
# docker加速
docker-ce的配置文件是/etc/docker/daemon.json,此文件默认不存在,需要我们手动创建并进行配置,而docker的加速就是通过配置此文件来实现的。
docker的加速有多种方式:
* docker cn
* 中国科技大学加速器
* 阿里云加速器(需要通过阿里云开发者平台注册帐号,免费使用个人私有的加速器)
systemctl start docker
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
systemctl restart docker
docker version
docker info
# docker常用操作
| 命令 | 功能
| -------- | -------- | -------- |
| docker search | Search the Docker Hub for images
|docker pull | Pull an image or a repository from a registry
|docker images | List images
|docker create | Create a new conntainer
|docker start | Start one or more stopped containers
|docker run | Run a command in a new container
|docker attach | Attach to a runninng container
|docker ps | List containers
|docker logs | Fetch the logs of a container
|docker restart | Restart a container
|docker stop | Stop one or more running containers
|docker kill | Kill one or more running containers
|docker rm | Remove onne or more containers
|docker exec | Run a command in a running container
|docker info | Display system-wide information
|docker inspect | Return low-level information on Docker objects
# docker event state
![](https://s4.51cto.com/images/blog/202007/26/5367b6121837239709c84daf28003bd2.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
以上是关于docker基础用法的主要内容,如果未能解决你的问题,请参考以下文章