黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day2 全网最快最全(上)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day2 全网最快最全(上)

2024最新SpringCloud微服务开发与实战,java黑马商城项目微服务实战开发(涵盖MybatisPlus、Docker、MQ、ES、Redis高级等)

Day 2

你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客

这是我的 github https://github.com/Qiuner ⭐️

gitee https://gitee.com/Qiuner 🌹

如果本篇文章帮到了你 不妨点个吧~ 我会很高兴的 😄 (^ ~ ^)

想看更多 那就点个关注吧 我会尽力带来有趣的内容 😎

因为centOS7在2024年6月停服,因此我选择使用Ubunt来完成安装使用Docker

  • 博主发现自己经过多种方式后都没有成功将乌班图连接上ssh工具,加上最近很忙很忙很忙在加上已学过微服务,于是放弃了使用乌班图,而是用官方的linux。不然肯定狠狠调研下,写一篇博客
  • 有小伙伴想用乌班图来做可以在下面留言,我会看情况再用乌班图过一遍

CentOS 7 版本

容器与镜像

命令解读

docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
mysql

Docker常用命令

  • 容易拥有自己的ip内存什么的 每次使用docker run是再重复创建容器

其余常见命令

  1. 容器生命周期管理
  • docker run: 运行一个新容器。
  • docker start: 启动一个停止的容器。
  • docker stop: 停止一个运行中的容器。
  • docker restart: 重启一个运行中的容器。
  • docker pause: 暂停容器中的所有进程。
  • docker unpause: 恢复暂停的容器中的所有进程。
  • docker kill: 强制停止一个运行中的容器。
  • docker rm: 删除一个或多个容器。
  • docker ps: 列出正在运行的容器。
  • docker ps -a: 列出所有容器,包括停止的容器。
  1. 镜像管理
  • docker images: 列出本地的镜像。
  • docker pull: 从仓库中拉取一个镜像。
  • docker build: 根据 Dockerfile 构建一个镜像。
  • docker tag: 给镜像打标签。
  • docker rmi: 删除一个或多个镜像。
  1. 容器操作
  • docker exec: 在运行中的容器中执行命令。
  • docker attach: 进入一个正在运行的容器。
  • docker cp: 在容器和本地文件系统之间复制文件或目录。
  • docker inspect: 显示容器的详细信息。
  1. 网络
  • docker network ls: 列出 Docker 网络。
  • docker network create: 创建一个 Docker 网络。
  • docker network connect: 将容器连接到网络。
  • docker network disconnect: 将容器从网络断开连接。
  1. 数据卷
  • docker volume ls: 列出 Docker 数据卷。
  • docker volume create: 创建一个 Docker 数据卷。
  • docker volume rm: 删除一个或多个 Docker 数据卷。
  1. Docker Compose(用于定义和运行多容器的应用):
  • docker-compose up: 构建并启动应用的所有服务。
  • docker-compose down: 停止并移除应用的所有服务。
  • docker-compose build: 重新构建服务。
  • docker-compose logs: 查看服务的日志。

Docker小案例

docker pull nginx
  • 这里介绍了开发很重要的东西 找文档。
  • 前后端开发太庞大了,需要有不懂就查的能力 也不知道面试面那些有啥用🤧 招的是能解决问题的人 而不是八股

  • 这一步代码只是创建了容器,还需要运行

Docker基础命令实践

起别名

vi ~/.bashrc
alias dps='docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}\t{{.Names}}"'
  • docker ps 列出当前运行的 Docker 容器。
  • --format 选项用于自定义输出格式。
  • table 指定输出应为表格格式。
  • {{.ID}}{{.Image}}{{.Ports}}{{.Status}}{{.Names}} 是 Docker 容器的各个属性。
alias dis='docker images'
  • 然后点击ESC键 输入 :wq 来退出
  • 再输入 source ~/.bashrc

  • 如此 成功修改命令别名

数据卷挂载

cd /usr/share/nginx/html
/usr/share/nginx/html# ll
• 1
• 2
  • 因为容器为了精简,只保存最小化运行的内容,没有vi 因此不能通过vi来编辑index.html

  • 就相当于Vue中的双向绑定一样,在绑定的一边修改也会影响到另一边
  • 创建Nginx文件的时候,会在docker中也创建一个目录来存放这个容器的相应内容

  • 使用 docker volume --help

先移除已有的,因为只能在创建这个容器时实现数据数据绑定
docker rm -f nginx
再次创建,这样创建能够实现将数据绑定
docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

docker volume ls 
docker volume inspect html
cd /var/lib/docker/volumes/html/_data

为什么你能在主浏览器访问虚拟机配置的Nginx?

  • 原因是虚拟机与主机处于同一网络中,并且 Docker 容器的端口映射允许虚拟机的特定端口流量被转发到容器内的 Nginx 服务。确保虚拟机的 IP 地址和 Docker 端口映射配置正确,这样就可以成功访问容器内的服务。

使用MobaXterm来进行编辑

  • 就可以在这里直接修改
  • 也可以将外部资源直接拖进来

本地目录挂载

docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
-v /root/mysql/data:/var/lib/mysql \
-v /root/mysql/init:/docker-entrypoint-initdb.d \
-v /root/mysql/conf:/etc/mysql/conf.d \
mysql
  • 在执行这段命令之前需要先进行创建文件夹
  • 使用cd ~ 切换目录 然后使用mkdir 创建目录

制作自定义镜像

  • 镜像和容器的关系就是类和实例

  • JRE,全称 Java Runtime Environment(Java 运行时环境),是用于运行 Java 应用程序的一个软件平台。它包含了 Java 虚拟机(JVM)、Java 类库和其他必要的组件,允许用户在其计算机上运行用 Java 编写的程序。JRE 是 Java 开发工具包(JDK)的一个子集,专注于运行 Java 应用程序,而不包括编译和开发工具。

**第一步 ** 准备Linux运行环境 这里因为不知道java运行要哪些东西,因此把乌班图全部拿过来了

第二步 安装JRE

第三步

第四步 编写脚本并启动

大功搞成

镜像在docker中的结构

  • 这样分层的好处是 制作完乌班图所需要依赖镜像后,可以将其上传,然后下次要制作其他时,直接在这个镜像基础上开始制作
  • 而且镜像也会有差不多的地方,因此可以减少所用空间


黑马程序员2024最新SpringCloud微服务开发与实战 个人学习心得、踩坑、与bug记录Day2 全网最快最全(下):https://developer.aliyun.com/article/1548623

Qiuner
+关注
目录
打赏
0
0
0
0
29
分享
相关文章
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
本次的.HarmonyOS Next ,ArkTS语言,HarmonyOS的元服务和DevEco Studio 开发工具,为开发者提供了构建现代化、轻量化、高性能应用的便捷方式。这些技术和工具将帮助开发者更好地适应未来的智能设备和服务提供方式。
76 8
基于HarmonyOS 5.0(NEXT)与SpringCloud架构的跨平台应用开发与服务集成研究【实战】
微服务架构设计与实践:用Spring Cloud实现抖音的推荐系统
本文基于Spring Cloud实现了一个简化的抖音推荐系统,涵盖用户行为管理、视频资源管理、个性化推荐和实时数据处理四大核心功能。通过Eureka进行服务注册与发现,使用Feign实现服务间调用,并借助Redis缓存用户画像,Kafka传递用户行为数据。文章详细介绍了项目搭建、服务创建及配置过程,包括用户服务、视频服务、推荐服务和数据处理服务的开发步骤。最后,通过业务测试验证了系统的功能,并引入Resilience4j实现服务降级,确保系统在部分服务故障时仍能正常运行。此示例旨在帮助读者理解微服务架构的设计思路与实践方法。
107 17
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
微服务SpringCloud分布式事务之Seata
SpringCloud+SpringCloudAlibaba的Seata实现分布式事务,步骤超详细,附带视频教程
78 1
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
219 6
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
85 1
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
308 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等