docker 安装
Docker的基本组成
镜像(image):
docker镜像好比一个模板,可以通过这个模板来创建容器服务,tomcat镜像===>run==>tomcat容器(提供服务器)
容器(container):
docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建
仓库(repository):
存放镜像的地方。
安装docker
-
准备环境 -linux环境
-
安装
yum install docker
-
重启docker服务
systemctl restart docker
-
查看doceker版本 下载hello-world镜像
docker version
docker run hello-world -
查看下载的这个hello-world镜像
docker images
-
卸载
yum remove docker
rm -rf /var/lib/docker
阿里云镜像加速
https://blog.csdn.net/wohaqiyi/article/details/89335932
底层原理
docker是怎么工作的?
docker是一个cs 架构的系统,docker的守护进程运行在主机上。通过socket从客户端访问。
docker运行为什么比kvm块
-
docker有着比虚拟机更少的抽象层
-
docker利用的是宿主机的cpu,vm需要是guest os
所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导。虚拟机是加载guest os分钟级别。而docker是利用宿主机的操作系统直接启动服务,秒级。
docker 的常用命令
-
docker version # 显示版本信息
-
docker info #显示详细系统信息,包括容器和镜像的数量
-
docker 命令 --help #帮助命令
帮助文档的地址:https://docs.docker.com/reference/
镜像命令
docker images 查看所有主机上的镜像
docker search 搜索镜像
docker pull 下载镜像
docker rmi 删除镜像 #docker rmi -f $(docker images -aq)
容器命令
下载一个centos镜像来测试
docker pull centos
新建容器并启动
docker run [可选参数] image
#参数说明
--name==“NAME” 容器名字
-d 后台运行
-it 使用交互方式运行 进入容器查看
-p 指定容器的端口 -p 8080:8080
查看运行中的容器
docker ps -a
-a #列出当前正在运行的容器和带出历史运行过的容器
-n=? #显示最近新创建的多少个容器
-q #只显示容器的编号
退出容器
exit #停止容器直接退出
ctrl + p + q #容器不停止退出
删除容器
docker rm 容器id
docker rm -f $(docker ps -qa)
docker ps -qa |xargs docker rm
启动和停止容器的操作
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id
常用的其他命令
后台启动
docker run -d 容器 # 后台启动
#问题发现容器停止了
#常见的坑 docker 容器使用后台运行,就必须有一个前台进程,docker发现没有应用,就会自动停止。
查看日志
docker log -tf --tail 10 容器id
#自己写一段脚本
docker run -d centos /bin/sh -c "while ture;do echo shenme;sleep 1;done"
# 显示日志
-tf #显示日志 时间
--tail number #要显示日志条数
查看容器内进程信息
docker top 容器id
查看镜像的元数据
docker inspect 容器id
进入当前正在运行的容器
docker exec -it 容器id /bash/bash #进入新的终端
docker attach 容器id #正在执行当前的终端
从容器内拷贝数据到主机上
docker cp 容器id:/home/test.java /home
作业练习
docker 安装nginx
# 1.搜索
# 2.下载
# 3.运行测试
# 4.进入容器
docker安装tomcat
# 1.搜索
# 2.下载
# 3.运行测试
# 4.进入容器
标签:容器,run,基础,命令,镜像,docker,id,运行 From: https://www.cnblogs.com/hzk-bk-/p/16884955.html