当前位置: 代码网 > 服务器>服务器>云虚拟主机 > docker配置skywalking 监控springcloud应用的详细步骤

docker配置skywalking 监控springcloud应用的详细步骤

2025年04月24日 云虚拟主机 我要评论
在使用 docker 配置 skywalking 监控 spring cloud 应用时,主要分为以下几个步骤:1. 准备工作确保你的开发环境已经安装了 docker 和 docker compose

在使用 docker 配置 skywalking 监控 spring cloud 应用时,主要分为以下几个步骤:

1. 准备工作

  • 确保你的开发环境已经安装了 docker 和 docker compose。
  • 准备好 spring cloud 应用代码,并确保它支持 skywalking 的探针(agent)。

2. 拉取 skywalking oap server 和 ui 镜像

skywalking 提供了官方的 docker 镜像,可以通过以下命令拉取:

docker pull apache/skywalking-oap-server
docker pull apache/skywalking-ui
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.0

3. 创建 docker-compose.yml 文件

为了简化部署,可以使用 docker compose 来启动 skywalking 的 oap server 和 ui。

创建一个 docker-compose.yml 文件,内容如下:

version: '3.7'
services:
  oap:
    image: apache/skywalking-oap-server
    container_name: skywalking-oap
    ports:
      - "11800:11800" # grpc port
      - "12800:12800" # rest port
    environment:
      sw_storage: elasticsearch
      sw_storage_es_cluster_nodes: elasticsearch:9200
    networks:
      - skywalking-net
  ui:
    image: apache/skywalking-ui
    container_name: skywalking-ui
    ports:
      - "8080:8080"
    environment:
      sw_oap_address: http://oap:12800
    depends_on:
      - oap
    networks:
      - skywalking-net
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0
    container_name: elasticsearch
    environment:
      discovery.type: single-node
    ports:
      - "9200:9200"
    networks:
      - skywalking-net
networks:
  skywalking-net:
    driver: bridge

4. 启动 skywalking 服务

运行以下命令启动 skywalking 的 oap server、ui 和 elasticsearch:

docker compose up -d

这将启动以下服务:

  • oap server:负责收集和处理监控数据。
  • ui:提供可视化界面,默认访问地址为 http://localhost:8080
  • elasticsearch:存储监控数据。

5. 配置 spring cloud 应用

为了让 spring cloud 应用与 skywalking 集成,需要在应用中引入 skywalking 的 java agent。

5.1 下载 skywalking agent

apache skywalking 官方网站 下载对应版本的 skywalking agent。

解压后,你会得到一个文件夹,例如 apache-skywalking-java-agent-8.9.0

5.2 修改 spring cloud 应用的启动命令

在 spring cloud 应用的启动命令中添加 -javaagent 参数。例如:

java -javaagent:/path/to/apache-skywalking-java-agent-8.9.0/skywalking-agent.jar \
     -dskywalking.agent.service_name=your-service-name \
     -dskywalking.collector.backend_service=oap:11800 \
     -jar your-spring-cloud-app.jar

5.3 关键参数说明

  • -javaagent:指定 skywalking agent 的路径。
  • skywalking.agent.service_name:设置你的服务名称,用于区分不同的服务。
  • skywalking.collector.backend_service:指定 skywalking oap server 的地址(默认为 oap:11800)。

6. 使用 docker 启动 spring cloud 应用

如果你使用 docker 来运行 spring cloud 应用,可以在 dockerfile 或 docker-compose.yml 中添加 -javaagent 参数。

例如,在 docker-compose.yml 中添加:

app:
  image: your-spring-cloud-image
  container_name: spring-cloud-app
  environment:
    - java_opts=-javaagent:/skywalking-agent/skywalking-agent.jar -dskywalking.agent.service_name=your-service-name -dskywalking.collector.backend_service=oap:11800
  volumes:
    - ./apache-skywalking-java-agent-8.9.0:/skywalking-agent
  depends_on:
    - oap
  networks:
    - skywalking-net

7. 验证监控

  • 访问 skywalking ui:http://localhost:8080
  • 在页面上查看服务拓扑图、性能指标等信息。
  • 如果一切正常,你应该能看到你的 spring cloud 应用的监控数据。

8. 注意事项

  • 确保 spring cloud 应用和 skywalking oap server 在同一个网络中(例如通过 docker compose 创建的 skywalking-net 网络)。
  • 如果使用的是自定义的 elasticsearch 地址或端口,请修改 sw_storage_es_cluster_nodes 环境变量。
  • 根据实际需求调整 skywalking agent 的配置文件(agent/config/agent.config)。

通过以上步骤,你可以成功使用 docker 配置 skywalking 来监控 spring cloud 应用!

到此这篇关于docker配置skywalking 监控springcloud应用的文章就介绍到这了,更多相关docker 监控springcloud应用内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com