docker
弱小和无知不是生存的障碍,傲慢才是.
docker为啥会出现
一款项目:开发->上线两套环境,配置比较麻烦
docker是基于go语言实现的
容器化技术
模拟的不是全部的操作系统,模拟的只是一些核心的功能.
容器内的应用直接运行在宿主机的内容,容器是没有自己的内核的,没有虚拟我们的硬件
基本组成

镜像(image): 就好比是一个模版,可以通过这个模版来创建容器服务,通过这个镜像可以创建多个容器
容器:独立运行一个或者一个组引用,通过镜像来创建(简易版linux)
仓库:存放镜像的地方,国内(阿里云,需要配置国内加速)
执行流程:
1.先从本机上查找镜像,如果有就运行,如果没有从仓库里面拉取
镜像命令
--查看下载的镜像
[root@localhost admin]# clear
[root@localhost admin]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 9c7a54a9a43c 6 months ago 13.3kB
REPOSITORY :仓库源
TAG:镜像的标签
IMAGE ID:镜像的id
CREATED:镜像创建的时间
SIZE:大小#可选项
-a,-all #列出所有镜像
-q,--quiet #只显示镜像的id
#下载镜像
docker pull imagesName[:tag] #如果不写tag,默认就是latest(docker pull mysql:5.7)
#删除镜像
docker rmi imagesName
容器命令
下载一个centos来测试学习
docker pull centos
新建容器并启动
docker run[可选参数] images
#参数说明
--name ="Name" 容器名字用来区分名字
-d 后台方式运行
-it 使用交互方式运行
-p 指定容器的端口
docker run -it centos /bin/bash #启动并进入容器
exit # 从容器中退到主机
docker ps #查看正在运行的容器-a #查看历史运行的程序-n? #显示最近创建的容器ctrl +p +q #容器不停止运行
删除容器
docker rm 容器id
docker stop id #停止正在运行的服务
docker kill id #强制停止
docker restart #重启
其他命令
后台启动命令
docker run -d centos
#使用ps的时候发现停止了,如果容器使用了后台进程,那么必须有一个前台引用,就会自动停止
查看日志
docker logs
查看元数据
docker inspect id
进入当前正在运行的容器
docker exec -it 容器id
进入容器后开启一个新的终端
docker attach 容器id
进入容器正在进行的终端
复制容器内容到主机
docker cp id 文件目录 主机路径
docker镜像讲解
器id
进入容器后开启一个新的终端
docker attach 容器id
进入容器正在进行的终端
### 复制容器内容到主机 docker cp id 文件目录 主机路径## docker镜像讲解