一、相关概念
Docker是CS架构,主要有两个概念:
- Docker daemon:
运行在宿主机上,Docker守护进程,用户通过Docker client(Docker命令)与Docker daemon交互。 - Docker client:
Docker 命令行工具,是用户使用Docker的主要方式,Docker client与Docker daemon通信并将结果返回给用户,Docker client也可以通过socket或者RESTful api访问远程的Docker daemon。
了解了Docker的组成,再来了解一下Docker的三个主要概念:
- Docker image:
镜像是只读的,镜像中包含有需要运行的文件。
镜像用来创建container,一个镜像可以运行多个container;
镜像可以通过Dockerfile创建,也可以从Docker hub/registry上下载。 - ** Docker container: **
容器是Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环境,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。 - ** Docker hub/registry: **
共享和管理Docker镜像,用户可以上传或者下载上面的镜像,官方地址为https://registry.hub.docker.com/,也可以搭建自己私有的Docker registry。
镜像就相当于打包好的版本,镜像启动之后运行在容器中,仓库就是装存储镜像的地方。
二、Docker 的安装
Docker 软件包已经包括在默认的 CentOS-Extras 软件源里。因此想要安装 docker,只需要运行 yum 命令:
[root@localhost ~]# yum install docker -y
[root@localhost ~]# systemctl start docker.service #启动docker服务 [root@localhost ~]# systemctl enable docker.service #设置开机启动 [root@localhost ~]# docker version #查看docker版本信息,如有返回代表成功!
例子:Hello wold!
-
修改官方镜像源:
中国可以用:registry.docker-cn.com 来进行加速,但只包含流行的公有镜像!!![root@localhost ~]# vi /etc/docker/daemon.json #添加: { "registry-mirrors": ["https://registry.docker-cn.com"], "live-restore": true }
-
拉取并运行hello-world:
[root@localhost ~]# docker pull library/hello-world #docker pull 是抓取 image 文件的命令,library/hello-world是 image 文件在仓库里面的位置,其中library是 image 文件所在的组,hello-world是 image 文件的名字。 [root@localhost ~]# docker images #显示结果 REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/hello-world latest fce289e99eb9 2 weeks ago 1.84 kB [root@localhost ~]# docker run hello-world #显示结果 Hello from Docker! This message shows that your installation appears to be working correctly. ... #输出提示后,hello-world会停止运行,容器自动终止。有些不会自动终止,以此来提供服务,比如mysql镜像等。
三、常用命令
拉取镜像:
docker pull image_name #image_name 是镜像名字和位置
查看本地镜像:
docker images #查看宿主上的所有镜像,位置在//var/lib/docker
在线查找镜像:
docker search image_name #image_name 是你想查找的镜像名字或关键字
删除镜像:
docker rmi docker.io/hello-world #删除容器必须先停止,不然需加上 -f 强制删除。
查看当前运行的容器:
docker ps -al #参数为所有和详细信息
启动、停止和重启容器:
docker start container_name/container_id #container_name 为要操作的容器名字,container_id为查询到的容器ID(两种都可操作) docker stop container_name/container_id docker restart container_name/container_id
进入后台容器:
docker attach container_name/container_id
删除容器:
docker rm container_name/container_id
查看当前系统Docker信息:
docker info
下载镜像到本地:
docker pull centos:latest #下载某一个镜像 docker pull centos #下载centos仓库下所有镜像
原文链接:https://www.cnblogs.com/colman/p/10280440.html
© 版权声明
声明📢本站内容均来自互联网,归原创作者所有,如有侵权必删除。
本站文章皆由CC-4.0协议发布,如无来源则为原创,转载请注明出处。
THE END