当前位置: 首页 > news >正文

SpringBoot应用原生或docker镜像容器集成Skywalking

相关组件及版本

序号

组件

版本

备注

1

skywalking-oap-server

8.9.1

2

elasticsearch

7.17.6

3

skywalking-ui

8.9.1

4

apache-skywalking-java-agent

8.15.0

一、JAR包方式部署服务

下载apache-skywalking-java-agent jar文件

使用如下名称执行

java \
-javaagent:/agent/skywalking-agent.jar \
-Dskywalking.agent.service_name=${service_name} \
-Dskywalking.collector.backend_service=${IP}:11800 \
-jar ${spring-project}.jar
  • ${service_name}:应用服务名称
  • ${IP}:Skywalking服务所在服务器IP
  • ${spring-project}:jar文件名称

二、docker方式部署服务

1、构建基础镜像,将skywalking-agent文件夹下的文件包含在内

1)修改apache-skywalking-java-agent下的配置文件agent.config

# The service name in UI
agent.service_name=${SW_AGENT_NAME:Your_ApplicationName}
# Backend service addresses.
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:127.0.0.1:11800}

修改为分配(指定)的服务名称和对应后端服务地址

2)编辑Dockerfile文件

FROM openjdk:8
LABEL maintainer="creator"
ENV TZ=Asia/Shanghai
EXPOSE 8080
COPY skywalking-agent/* skywalking-agent/
# 别名 将bds-admin 改名为app,与docker-compose.yml中对应
ADD bds-admin.jar app.jar
# 修改这个文件的访问时间和修改时间为当前时间,而不会修改文件的内容。
RUN sh -c 'touch /app.jar'
#ENTRYPOINT ["java","-jar","/app.jar"]
ENTRYPOINT ["java","-javaagent:/skywalking-agent/skywalking-agent.jar","-jar","/app.jar"]

2、构建容器,使用-v或者volumes 将skywalking-agent文件夹挂载到容器

1)编辑Dockerfile文件

FROM openjdk:8
LABEL maintainer="creator"
ENV TZ=Asia/Shanghai
EXPOSE 8080# 别名 将bds-admin 改名为app,与docker-compose.yml中对应
ADD bds-admin.jar app.jar
# 修改这个文件的访问时间和修改时间为当前时间,而不会修改文件的内容。
RUN sh -c 'touch /app.jar'
#ENTRYPOINT ["java","-jar","/app.jar"] 修改为下面的语句
ENTRYPOINT ["java","-javaagent:/skywalking-agent/skywalking-agent.jar","-jar","/app.jar"]

2)编辑docker-compose.yml文件

version: "3"
services:app-dev:restart: alwayscontainer_name: app-devimage: app:1.0build: . # 表示以当前目录下的Dockerfile开始构建镜像ports:- "8080:8080"volumes:- ./app/logs:/app/logs- ./app/uploadPath:/app/uploadPath- ./skywalking-agent:/skywalking-agent

3)启动应用服务

docker-compose up -d --build

相关文章:

  • 软件工程(二):开发模型
  • 基于亚博K210开发板——看门狗实验
  • print用法讲解(Python)
  • js day8
  • JAVA实现将富文本内容插入已有word文档并下载(dock4j+jsoup)
  • rabbitmq-集群部署
  • # 力扣:2、 两数相加:Java四种解法详解
  • spring boot 2升级3 记录
  • 驱动开发硬核特训 │ Day 23(下篇): i.MX8MP LCDIFv3 驱动中的 Regulator 系统全解
  • 2025一些热门的AI大模型课程资料推荐(持续更新中)
  • APIC Bond0/Teaming
  • QgraphicsView异步线程加载地图瓦片
  • 1. Msys2环境安装
  • 1.文档搜索软件Everything 的使用介绍
  • Kubernetes》》k8s》》explain查 yaml 参数
  • 第十二届蓝桥杯 2021 C/C++组 空间
  • windows中无法关闭mysql57服务
  • RSS‘25|CMU提出统一空中操作框架:以末端执行器为中心,无人机实现高精度遥操作
  • 算法设计与分析(期末试卷)
  • 用Python做有趣的AI项目 6:AI音乐生成器(LSTM Melody Generator)
  • 葡萄牙总理:未来几小时内将全面恢复供电
  • 美军空袭也门拘留中心,已致68人死亡
  • 香港警务处高级助理处长叶云龙升任警务处副处长(行动)
  • 深一度|“凑合过”的利物浦,英超第二冠只求性价比
  • 主播说联播丨六部门出台新政!来华买买买,实惠多多多
  • 上海浦东单价超10万楼盘228套房源开盘当天售罄,4月已有三个新盘“日光”