一、什么是容器
谈起docker ,就要先了解一下容器,个人理解所谓的容器就是:将一个应用所需要的开发环境和依赖包打包到一起
,便于使用和部署。其实在这个星球上做容器的公司很多,只是做docker的这个公司在各种因素的加持下成功了、出名了,所以现在谈起容器,大家总是率先想到docker,当然它也很好用。
二、为什么使用容器
1 、 简化程序
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷是 Docker的最大优势,过去需要用数天乃至数周的安装调试任务,在Docker容器的处理下,呼吸之间就能完成。
2、 节省开支
一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。
3 、 持续交付和部署
对开发和运维人员来说,最希望的就是一次创建或配置,可以在任意地方正常运行。使用 Docker 可以通过定制应用镜像来实现持续集成、持续交付、部署。开发人员可以通过 Dockerfile 来进行镜像构建;而运维人员则可以直接在生产环境中快速部署该镜像。而且使用 Dockerfile 使镜像构建透明化,不仅仅开发团队可以理解应用运行环境,也方便运维团队理解应用运行所需条件,帮助更好的生产环境中部署该镜像。
4 、 更轻松的迁移
由于 Docker 确保了执行环境的一致性,使得应用的迁移更加容易。Docker 可以在很多平台上运行,无论是物理机、虚拟机、公有云、私有云,甚至是笔记本,其运行结果是一致的。因此用户可以很轻易的将在一个平台上运行的应用,迁移到另一个平台上,而不用担心运行环境的变化导致应用无法正常运行的情况。
三、docker的实验
安装docker参考:
https://www.runoob.com/docker/docker-container-usage.html
安装好docker,配置国内加速器(阿里、清华),配置好docker仓库后,可以拉取想要的镜像。
(1)docker search mysql
查找容器
(2)docker pull mysql
拉取容器
(3)docker images
可以查看所有下载下来的镜像(运行中的、或者未运行的)
(4)docker容器管理实验
1、创建postgres数据库的永久存储卷pgsql-volume
docker volume create pgsql-volume
2、查找pgsql卷组位置
find / -name pgsql-volume
3、列出所有的卷组
docker volume ls
4、运行postgres数据库
docker run -d --name=postgres13 -p 5432:5432 -v pgsql-volume:/var/lib/docker/volumes/pgsql-volume -e POSTGRES_PASSWORD=your_password postgres
5、查看postgres容器运行状态docker ps
只列出当前正在运行的容器
docker ps -a
将运行的和未运行的容器列出来
6、docker stop 63c8c5b9f9db
停止正在运行的容器
7、docker start 容器ID
docker start
命令用于启动一个已经停止的容器
docker run
命令用于创建并启动一个容器,在第一次运行一个容器的时候使用,后面再次启动这个容器使用docker start 容器ID
就行了。
8、docker rm
容器ID
删除一个已经停止的容器
docker rmi mysql
删除本地一个镜像
这样从开始到结束,一个容器的生命周期就在命令行的操作下完成了。