基于Docker部署最新版本SkyWalking【10.1.0版本】

文章目录

  • 前言
  • 前置条件
  • [一、创建Docker 网络](#一、创建Docker 网络)
  • [二、部署 SkyWalking OAP 服务器](#二、部署 SkyWalking OAP 服务器)
  • [三 部署 SkyWalking UI](#三 部署 SkyWalking UI)
  • [四 查看日志](#四 查看日志)
    • [4.1. 查看 SkyWalking OAP 日志](#4.1. 查看 SkyWalking OAP 日志)
    • [4.2. 查看 SkyWalking UI 日志](#4.2. 查看 SkyWalking UI 日志)
  • [五 停止并删除容器](#五 停止并删除容器)
  • 结论

前言

由于本地的 JDK 版本与 SkyWalking 对应的 JDK 版本不一致,为了避免兼容性问题并简化环境配置,我们使用 Docker 来部署 Apache SkyWalking。这种方法可以确保在隔离的容器中运行 SkyWalking,从而避免对本地环境的影响。

前置条件

  • 已经安装了Docker环境并且可以正常拉去镜像

一、创建Docker 网络

首先,创建一个专用于 SkyWalking 组件之间通信的 Docker 网络。

复制代码
docker network create skywalking-net

用于skywalking-ui 向 skywalking-oap通信

对应删除命令docker network rm skywalking-net

二、部署 SkyWalking OAP 服务器

使用默认存储启动(H2数据库)

复制代码
docker run --name skywalking-oap --restart always -d \
  -p 11800:11800 -p 12800:12800  \
  --network skywalking-net \
  apache/skywalking-oap-server:10.1.0

使用es存储对应命令

bash 复制代码
docker run --name skywalking-oap --restart always -d \
  -p 11800:11800 -p 12800:12800 \
  --network skywalking-net \
  -e SW_STORAGE=elasticsearch \
  -e SW_STORAGE_ES_CLUSTER_NODES=127.0.0.1:9200 \
  apache/skywalking-oap-server:10.1.0

127.0.0.1:9200替换为实际使用的Elasticsearch IP 地址和端口。

三 部署 SkyWalking UI

SkyWalking UI 提供了一个基于 Web 的界面,用于可视化 OAP 服务器收集的遥测数据。

bash 复制代码
docker run --name skywalking-ui --restart always -d -p 8080:8080 --network skywalking-net apache/skywalking-ui:10.1.0

如果8080端口被占用,这里可以替换成其他的端口 例如: -p 28080:8080

如果遇到以下报错报错

bash 复制代码
com.linecorp.armeria.client.UnprocessedRequestException: io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: Connection refused: localhost/127.0.0.1:12800

使用以下命令启动ui

bash 复制代码
docker run --name skywalking-ui --restart always -d -p 8080:8080 -e SW_OAP_ADDRESS=http://skywalking-oap:12800 --network skywalking-net apache/skywalking-ui:10.1.0

四 查看日志

4.1. 查看 SkyWalking OAP 日志

basg 复制代码
docker logs -f skywalking-oap

4.2. 查看 SkyWalking UI 日志

bash 复制代码
docker logs -f skywalking-ui

五 停止并删除容器

##5.1. 停止并删除 OAP 容器

bash 复制代码
docker stop skywalking-oap
docker rm skywalking-oap

5.2. 停止并删除 UI 容器

bash 复制代码
docker stop skywalking-ui
docker rm skywalking-ui

结论

至此,已经成功配置了 Apache SkyWalking 的 OAP 服务器和 UI。可以选择使用 H2 或 Elasticsearch 存储,并通过 SkyWalking UI 监控和跟踪系统的运行情况。

官方文档地址:

https://skywalking.apache.org/docs/main/latest/en/setup/backend/backend-docker/

https://skywalking.apache.org/docs/main/latest/en/setup/backend/ui-setup/

相关推荐
一人一萧十只猫�1 小时前
Kubernetes 全面解析:从基础设施变革到核心架构详解
云原生·容器·kubernetes
帽儿山的枪手4 小时前
docker-image 工具展示更详细镜像层内容
docker
草履虫建模4 小时前
RuoYi-Vue 项目 Docker 容器化部署 + DockerHub 上传全流程
java·前端·javascript·vue.js·spring boot·docker·dockerhub
小醉你真好6 小时前
6、CentOS 9 安装 Docker
linux·docker·centos
xdpcxq10297 小时前
Docker用Web应用实例深入容器
前端·docker·容器
极客奇点9 小时前
容器化成本优化:K8s资源请求与限制的黄金法则——从资源画像分析到25%成本削减的实战指南
云原生·容器·kubernetes·降本增效·成本优化
TransPlus10 小时前
K8s集群两者不同的对外暴露服务的方式
云原生·容器·kubernetes
●VON11 小时前
重生之我在暑假学习微服务第四天《Docker-下篇》
java·学习·docker·微服务·容器
only_Klein12 小时前
openeuler24.03部署k8s1.32.7集群(一主两从)
linux·运维·容器·kubernetes
77qqqiqi12 小时前
Docker
java·docker·微服务