说明:本教程使用的系统是:centos7
1.Docker 介绍
-
Docker是一个开源的应用容器引擎
2.Docker 安装与启动
-
安装前提:docker需要Linux内核是3.10以上:uname -r 查看Linux内核
-
安装指令:yum install docker
-
启动指令:systemctl start docker.service
-
停止指令:systemctl enable docker.service
-
查看版本:docker version
-
设置docker开机启动:systemctl enable docker
3.Docker 相关概念
docker daemon:运行在宿主机上,Docker守护进程,用户通过Docker client(Docker命令)与Docker daemon交互
docker主机(Host): 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器
docker客户端(Client): 客户端通过命令行或者其他工具使用 Docker [API](https://docs.docker.com/reference/api/docker_remote_api)与 Docker 的守护进程通信
docker镜像(Images): Docker 镜像是用于创建 Docker 容器的 模板
docker容器(Container): 容器是独立运行的一个或一组应用
docker仓库(Registry): Docker仓库用来保存镜像(Images),可以理解为代码控制中的代码仓库
4.Docker 组成
Docker image :镜像是只读的,镜像中包含有需要运行的文件。镜像用来创建container,一个镜像可以运行多个container;镜像可以通过Dockerfile创建,也可以从Docker hub/registry上下载
Docker container :容器是Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环境,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。
Docker hub/registry :共享和管理Docker镜像,用户可以上传或者下载上面的镜像,[官方地址](https://registry.hub.docker.com/),也可以搭建自己私有的[Docker Registry](https://registry.hub.docker.com)
5.Image 常用指令
|操作|指令|说明 |------ |检索镜像|docker search mysql|查询image| |拉取镜像|docker pull docker.io/mysql:tag|tag可选,默认;latest,可以全名,也可以简写| |镜像列表|docker images|本地镜像列表| |删除镜像|docker rmi image-id|删除本地docker image|
6.container 常用指令
|操作|指令|说明 |------ |运行容器|run --name test-tomcat tomcat:latest -d|后台运行 Tomcat 的 latest 版本| |查看运行中的容器|docker ps|-a 全部| |停止容器|docker stop name/container-id|
7.Docker 的 Hello World
1) 查询镜像: docker search hello
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/hello-world Hello World! (an example of minimal Docker... 666 [OK]
2) 拉取镜像:docker pull docker.io/hello-world 或者去掉前缀,直接 docker pull hello-world
成功提示:
Using default tag: latest
Trying to pull repository docker.io/library/hello-world ...
latest: Pulling from docker.io/library/hello-world
d1725b59e92d: Pull complete
Digest: sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788
Status: Downloaded newer image for docker.io/hello-world:latest
3)检查镜像:docker iamges
4) 启动容器:docker run hello-world
出现:Hello from Docker!,运行成功
5)删除容器:
查询容器ID : docker ps -a
删除容器: docker rm 81ff810918d3
6) 删除镜像
查询镜像: docker images
删除镜像: docker rmi 4ab4c602aa5e
8.温馨提示
- 使用方法:docker pull registry.docker-cn.com/library/ubuntu:16.04