Docker
Docker学习
百度百科介绍:https://baike.baidu.com/item/Docker/13344470?fr=aladdin
官网:https://docs.docker.com/
文档地址:https://docs.docker.com/
仓库地址:https://hub.docker.com/
虚拟机技术缺点:
- 资源占用十分多
- 启动慢
- 容器
容器化技术不是模拟的一个完整的操作系统
比较Docker和虚拟机技术的不同
- 传统虚拟机,虚拟出一条硬件,运行一个完成的操作系统,然后在这个系统上安装和运行软件。
- 容器内的应用直接运行在宿主机的内容,容器是没有自己的内核 - 的,也没有虚拟我们的硬件,所以就轻便了
- 每个容器间是互相隔离的,每个容器内都有一个属于自己的文件系统,互不影响。
Docker安装
镜像(image):
docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像====>run===>tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)
容器(coontainer):
Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建的。
启动、停止、删除、基本命令
目前就可以把容器理解为一个简易的Linux系统
仓库(repository):
仓库(公有仓库、私有仓库)就是存放镜像的地方
Docker Hub
阿里云
安装参考:https://docs.docker.com/engine/install/ubuntu/
Docker命令
环境准备
阿里云镜像加速器
命令参考:https://docs.docker.com/engine/reference/commandline/cli/#docker
docker version #显示docker版本信息
docker info #显示docker的系统信息
docker help #帮助信息
镜像命令
docker images
docker images
#释义
REPOSITORY | 镜像的仓库源 |
---|---|
TAG | 镜像的标签 |
I MAGE ID | 镜像的ID |
CREATED | 镜像的创建时间 |
SIZE | ——镜像的大小 |
#可选项
-a, --all #列出所有镜像
-q, --quiet #只显示镜像的ID
docker search
docker search
docker search mysql
serarch 参数
通过参数过滤来查找MySQL
docker search mysql --filter=STARS=300
docker pull 下载镜像
docker pull mysql
docker pull ————————————#镜像名【:tag】
docker pull ————————————#默认下载最新版本,也可以指定版本下载
root@ubuntu:~# docker pull mysql
Using default tag: latest ———————#未写tag 默认latest
latest: Pulling from library/mysql
…
…分层下载
…
…
签字信息
真实地址
docker pull mysql===docker pull docker.io/library/mysql:latest(等价)
删除指定容器 docker rmi -f 容器ID
删除多个容器 docker rmi -f 容器ID 容器ID 容器ID 容器ID
删除全部容器 docker rmi -f $(docker images -aq)
容器命令
** 有了镜像才可以创建容器 ** Linux 下载一个centos镜像来测试
新建容器并启动
docker pull centos
docker run [可选参数] image
#参数说明
–name=“Name” 容器名字
-d 后台方式运行
-it 使用交互方式运行,进入容器看内容
-p 指定容器端口 -p 8080:8080
-p
-p 主机端口:容器端口
-p 容器端口
容器端口
-P 随机指定端口