day02-Docker
输入“/”快速插入
day02-Docker
飞书用户7020
2023年5月15日创建
43949
133257
本节对应的B站视频:
同学们,在前两天我们学习了Linux
操作系统
的常见命令以及如何在Linux上部署一个单体项目。大家想一想自己最大的感受是什么?
我相信,除了个别天赋异禀的同学以外,大多数同学都会有相同的感受,那就是麻烦。核心体现在三点:
•
命令太多了,记不住
•
软件安装包名字复杂,不知道去哪里找
•
安装和部署步骤复杂,容易出错
其实上述问题不仅仅是新手,即便是运维在安装、部署的时候一样会觉得麻烦、容易出错。
特别是我们即将进入微服务阶段学习,微服务项目动辄就是几十台、上百台服务需要部署,有些大型项目甚至达到数万台服务。而
由于每台服务器的运行环境不同,你写好的安装流程、部署脚本并不一定在每个服务器都能正常运行
,经常会出错。这就给系统的部署运维带来了很多困难。
那么,有没有一种技术能够避免部署对服务器环境的依赖,减少复杂的部署流程呢?
答案是肯定的,这就是我们今天要学习的
Docker
技术。你会发现,有了Docker以后项目的部署如丝般顺滑,大大减少了运维工作量。
即便你对Linux不熟悉,你也能
轻松部署各种常见软件、Java项目
。
通过今天的学习,希望大家能达成下面的学习目标:
•
能利用Docker部署常见软件
•
能利用Docker打包并部署Java应用
•
理解Docker数据卷的基本作用
•
能看懂DockerCompose文件
1.快速入门
要想让Docker帮我们安装和部署软件,肯定要保证你的机器上有Docker. 由于大家的操作系统各不相同,安装方式也不同。为了便于大家学习,我们统一在
CentOS
的
虚拟机
中安装Docker,统一学习环境。
❗
注意:使用MacBook的同学也请利用 VMwareFusion来安装
虚拟机
,并在虚拟机中学习Docker使用。
安装方式参考文档:《安装Docker》
1.1.部署
MySQL
首先,我们利用Docker来安装一个
MySQL
软件,大家可以对比一下之前传统的安装方式,看看哪个效率更高一些。
如果是利用传统方式部署
MySQL
,大概的步骤有:
•
搜索并下载
MySQL
安装包
•
上传至Linux环境
•
编译和配置环境
•
安装
而使用Docker安装,仅仅需要一步即可,在命令行输入下面的命令(建议采用CV大法):
PowerShell
docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
mysql
运行效果如图: