简介:TG@luotuoemo
本文由阿里云代理商【聚搜云】撰写
一、本地部署
1. 梳理服务部署表格
- 列出所有微服务及其依赖关系,确定每个服务的配置和端口。
2. Maven 子父模块打包
-
使用 Maven 的子父模块功能管理微服务项目,通过
spring-boot-maven-plugin实现一键打包。 -
父模块配置:
xml复制
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> </plugin> -
子模块配置:
xml复制
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <id>repackage</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
3. 编写 Dockerfile
-
为每个微服务编写 Dockerfile,将应用打包为 Docker 镜像。
-
示例:
dockerfile复制
FROM openjdk:8-jdk-alpine WORKDIR /app ADD target/your-service.jar . EXPOSE 8080 ENTRYPOINT ["java", "-jar", "/app/your-service.jar"]
4. 编写环境依赖配置
-
使用 Docker Compose 配置环境依赖服务(如 MySQL、Redis、RabbitMQ 等)。
-
示例:
yaml复制
version: '3' services: mysql: image: mysql:5.7 ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: root volumes: - ./.mysql-data:/var/lib/mysql
5. 测试访问
- 在本地启动 Docker Compose,验证服务是否正常运行。
二、服务器部署
1. 准备服务器
- 购买并初始化腾讯云服务器,配置安全组规则,放通必要的端口。
2. 安装 Docker 和 Docker Compose
-
在服务器上安装 Docker 和 Docker Compose。
-
示例:
bash复制
curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh curl -L "https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po '"tag_name": "\K.*\d')" /docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
3. 同步文件
- 将本地的微服务项目代码上传到服务器,可以使用 SCP 或 FTP。
4. 获取 JAR 包
- 在服务器上安装 Maven 并打包项目,生成 JAR 包。
5. 启动服务
-
使用 Docker Compose 启动环境依赖和微服务。
-
示例:
bash复制
docker-compose -f docker-compose.env.yml up -d docker-compose -f docker-compose.service.yml up -d
6. 测试访问
- 通过公网 IP 访问服务,验证是否部署成功。
三、运维管理
1. 监控
- 使用 Prometheus 和 Grafana 监控微服务状态。
2. 日志管理
- 使用 ELK 堆栈(Elasticsearch、Logstash、Kibana)或 Fluentd 收集和分析日志。
3. 自动化运维
- 使用 Jenkins 或 Ansible 实现自动化部署和运维。