今日练习

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
简介: 本作业通过Docker部署微服务环境,涵盖Nacos、MySQL、耗材中心、医生站及网关服务的安装与配置。实践从数据库搭建到多服务协同,掌握Dockerfile与docker-compose编排,实现完整微服务架构的构建、部署与验证,提升容器化应用实战能力。(238字)

作业目标
掌握Docker对于常见微服务中间件的安装、部署、运行
掌握Docker对于微服务的安装,尤其是陌生的一个工程从数据库->工程->访问
工程介绍
工程结构图
技术架构图
物理部署图
环境准备
通过docker images、docker ps -a指令确保本地无任何镜像、运行中的容器,如有借助
docker rmi -f 镜像,删除镜像
docker rm -f 容器,删除容器
mysql涉及的表结构语句,数据库:doctor_station,建表语句:
doctor_station.sql
(2 KB)
今日所有镜像文件上传路径:/tmp/docker,需在tmp下手动创建docker文件夹
题目一
目标
完成Docker环境下Nacos服务部署、启动、访问验证
提示
去dockerhub官网找到Nacos,查看拉取、启动指令,启动完成后浏览器验证
参考答案
dockerhub查看服务拉取指令:docker pull nacos/nacos-server
/tmp/docker路径下,执行docker pull指令
查看官网启动指令,并调整如下:
官网 Quick Start
调整指令如下:
修改登录用户名:nacos,密码默认是nacos不用修改
修改宿主机暴露端口:8848
修改镜像名称:当前使用latest,不用声明
访问验证
用户名/密码=nacos/nacos,http://192.168.206.129:8848/nacos/#/login
题目二
目标
完成Docker环境下MySQL服务部署、启动、访问验证,并完成表结构、数据导入
提示
参照dockerhub官网完成mysql安装
本地Navicat等可视化工具连接后,完成表结构、数据的导入
参考答案
dockerhub查看服务拉取指令:docker pull mysql
/tmp/docker路径下,执行docker pull指令
官网查看启动指令,并调整如下:
官网 Quick Start
修改如下,并执行启动
修改用户名
修改密码
修改镜像名称
启动后,客户端连接访问
注意:此时安装的latest版本比较高,部分可视化工具可能链接不是
导入环境准备中的表结构语句,如下:
题目三(*)
目标
完成Docker环境下耗材中心服务部署、启动、访问验证
提示
mysql服务、nacos需更改原来的localhost为对应ip
需创建对应的Dockerfile、docker-compose.yml,其中docker-compose.yml不要重复定义nacos、mysql,避免重复启动
nacos配置文件需同步过来:inventoryservice-dev.yaml
为保证访问,前期可以在docker-compose.yml中暴露此服务端口,以验证是否部署成功
日志查看路径:/var/lib/docker/containers/容器ID-json.log,如启动失败可以在这里查看错误原因,如我最初没有同步nacos配置文件
参考答案
修改application.yml、bootstrap.yml,这里更改了IP【注意你自己的需调整成自己的】
pom.xml增加构建信息
执行maven-clean-package,编译打包,在target中找到上述finalName名称的jar
新建:Dockerfile,并与inventory.jar放在文件夹:inventory中
新建:docker-compose.yml,放在文件夹:doctor-station中
上述整体目录结构目前如下:
doctor-station
inventory
Dockerfile
inventory.jar
docker-compose.yml
上传整个文件夹,到:/tmp/docker/
执行启动命令: docker-compose up -d
postman请求验证:

题目四
目标
完成Docker环境下医生站部署、启动、访问验证
提示
同题目二提示
参考答案
修改doctor-service配置文件
application.yml
bootstrap.yml
pom文件增加构建信息,并打包
创建Dockerfile
修改docker-compose.yml,追加doctor相关信息
上述整体目录结构目前如下:
doctor-station
inventory
Dockerfile
inventory.jar
doctor
Dockerfile
doctor.jar
docker-compose.yml
上传doctor到doctor-station文件夹下,重新上传:docker-compose.yml
停止原inventory服务:docker rm -f,并删除已有的镜像
执行语句重启整个微服务:docker-compose up -d。注意一定是重新构建两个才可以,否则删除镜像、容器后重新启动

postman测试验证,启动构建完成后稍等一下再访问,可以通过查看日志是否启动成功再决定是否访问

题目五
目标
完成Docker环境下网关服务部署、启动、访问验证
提示
参照作业二完成部署,但是此时暴露端口只暴露网关,其余都不暴露
参考答案
修改配置文件:application.yml
pom文件增加构建信息,并打包
创建Dockerfile
修改:docker-compose.yml文件,注意端口
上传gateway,重新上传:docker-compose.yml文件,整体结构如下
删除容器、镜像,并重启

重启:docker-compose up -d
postman验证
不设置权限,403禁止访问
设置后访问正常

相关文章
|
iOS开发
You have not agreed to the Xcode license.
You have not agreed to the Xcode license. Before running the installer again please agree to the license by opening Xcode.app or running:     sudo xcodebuild -license   在使用mac终端安装应用程序的时候,出现上面提示的时候,是因为Xcode没有打开激活,只需要,打开Xcode,同意各种协议,即可在终端安装应用程序了。
1842 0
|
2月前
|
数据采集 运维 前端开发
爬虫与数据采集:常见问题总结及对策
本文总结数据采集常见难题及解决方案:应对IP封禁用代理池+限速;缓解接口限流靠指数退避与分布式采集;破解动态页面借助浏览器自动化或接口抓包;保障数据质量需编码统一、清洗去重、异常续爬;始终坚守robots.txt与隐私合规底线。
|
8月前
|
数据采集 监控 Java
Python 函数式编程的执行效率:实际应用中的权衡
Python 函数式编程的执行效率:实际应用中的权衡
360 102
|
9月前
|
JSON JavaScript 测试技术
用Postman玩转电商API:一键测试+自动化请求教程
Postman 是电商 API 测试的高效工具,涵盖基础配置、自动化测试、环境管理与请求自动化,助你快速提升开发效率。
|
8月前
|
监控 数据可视化 计算机视觉
GitHub超 30000+ star 背后,这款 Supervision 工具为何让视觉开发者欲罢不能?
Roboflow 的 Supervision 是一个基于 MIT 协议的开源视觉辅助库,已获 GitHub 超 30,000 星标。它可解决视觉项目中的可视化、跟踪、计数、格式转换等常见问题,支持 YOLO、Detectron2、Transformers 等模型,适用于视频分析、区域统计、数据集处理等场景。其核心功能包括通用 Detections 类、多种 Annotator 可视化工具、区域统计工具(LineZone & PolygonZone)、视频跟踪与平滑处理、KeyPoints 跟踪、性能指标计算等。
542 40
|
9月前
|
存储 缓存 前端开发
《解锁前端数据持久化与高效查询:IndexedDB深度剖析》
本文深入剖析了前端开发中IndexedDB在数据持久化存储与高效查询方面的核心价值。首先对比传统存储方案的局限,凸显IndexedDB在大容量、复杂数据类型支持上的优势;接着阐述其异步操作、事务支持、索引系统、版本控制等核心特性;随后详解数据持久化策略,包括结构设计、读写更新、清理机制;还介绍了高效查询技巧,如索引优化、游标运用、复杂查询组合;并结合离线应用、数据缓存等案例说明实际价值,最后提及跨浏览器兼容等挑战及应对思路。全文为前端开发者提供了系统化的IndexedDB应用指南,助力提升数据管理能力。
266 2
|
负载均衡 虚拟化 数据中心
思科 WLC 部署模型详解
【4月更文挑战第22天】
498 1
思科 WLC 部署模型详解

热门文章

最新文章