五月综合激情婷婷六月,日韩欧美国产一区不卡,他扒开我内裤强吻我下面视频 ,无套内射无矿码免费看黄,天天躁,日日躁,狠狠躁

新聞動態(tài)

使用 docker部署tomcat并接入skywalking的使用

發(fā)布日期:2021-12-21 19:30 | 文章來源:CSDN

一、概述

上一篇文章介紹了使用 docker 部署 spring boot 并接入 skywalking,其中描述了使用 docker-compose 搭建 skywalking,這一篇文章就不介紹 skywalking 的搭建了,這里主要記錄一下使用 docker 部署一個 tomcat 并接入 skywalking 進(jìn)行服務(wù)鏈路追蹤。

二、使用 docker 部署 tomcat 并接入 skywalking

關(guān)于如何將 tomcat 應(yīng)用接入 skywalking 官網(wǎng)有如下描述:

詳細(xì)信息可以查看官網(wǎng):skywalking agent 官網(wǎng)

Linux Tomcat 7 / Tomcat 8
tomcat/bin/catalina.sh第一行添加以下內(nèi)容:

CATALINA_OPTS="$CATALINA_OPTS -javaagent:<skywalking-agent-path>"; export CATALINA_OPTS

Windows Tomcat 7 / Tomcat 8
在tomcat/bin/catalina.bat第一行添加以下內(nèi)容:

set "CATALINA_OPTS=-javaagent:<skywalking-agent-path>"

JAR File 或 Spring Boot
在應(yīng)用程序的啟動命令行中添加 -javaagent 參數(shù):

java -javaagent:<skywalking-agent-path> -jar yourApp.jar

注意-javaagent參數(shù)一定要在-jar參數(shù)之前。

由于我這里是使用 docker 部署 tomcat ,所以不打算修改 tomcat/bin/catalina.sh文件,而且查看tomcat/bin/catalina.sh文件,有如下描述:

在下圖中定義了讀取 setenv.sh 的腳本:

意思是:不要在catalina.sh這個腳本中設(shè)置變量,為了讓你的自定義變量分離,應(yīng)該把自定義的環(huán)境變量放在CATALINA_BASE/bin/setenv.sh 文件中,除此之外,經(jīng)過我測試發(fā)現(xiàn),可以直接使用環(huán)境變量的方式進(jìn)行設(shè)置,下面我將以兩者方式的配置進(jìn)行說明。

1、將自定義的變量寫在 setenv.sh 文件中

首先我們需要下載 skywalking agent,關(guān)于下載 agent 可以查看本文開頭的文章,之后將agent 放在一個可以訪問的目錄,我這里是測試,所以將 agent 目錄復(fù)制到了我的 Dockerfile 的同級目錄,其中 Dockerfile 的內(nèi)容如下:

FROM tomcat
LABEL maintaner="xiniao"
COPY agent /usr/skywalking/agent
WORKDIR /usr/local/tomcat/bin
RUN echo 'CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/skywalking/agent/skywalking-agent.jar";' > setenv.sh
ENV SW_AGENT_NAME="my-spring-demo" \
    SW_AGENT_COLLECTOR_BACKEND_SERVICES="127.0.0.1:11800"
WORKDIR /usr/local/tomcat/webapps/ROOT
COPY target/my-spring-demo.war my-spring-demo.war
RUN jar -xf my-spring-demo.war

關(guān)于 skywalking agent 的其他配置,則可以通過環(huán)境變量的方式進(jìn)行定義,比如這里指定了 skywalking 中顯示的服務(wù)名為 ENV SW_AGENT_NAME="my-spring-demo" 以及 skywalking 的后端服務(wù)地址 SW_AGENT_COLLECTOR_BACKEND_SERVICES="127.0.0.1:11800",我們訪問 skywalking ui 可以看到如下圖所示內(nèi)容:

2、使用環(huán)境變量指定 skywalking agent 的路徑

詳細(xì)的 Dockerfile 內(nèi)容如下:

FROM tomcat
LABEL maintaner="xiniao"
COPY agent /usr/skywalking/agent
ENV CATALINA_OPTS="$CATALINA_OPTS -javaagent:/usr/skywalking/agent/skywalking-agent.jar" \
    SW_AGENT_NAME="my-spring-demo-env" \
    SW_AGENT_COLLECTOR_BACKEND_SERVICES="127.0.0.1:11800"
WORKDIR /usr/local/tomcat/webapps/ROOT
COPY target/my-spring-demo.war my-spring-demo.war
RUN jar -xf my-spring-demo.war

使用如下命令構(gòu)建鏡像:

docker build -t my-spring-demo .

使用如下命令運(yùn)行容器:

docker run --rm -p 8080:8080 my-spring-demo

訪問 skywalking ui 可以看到監(jiān)控的信息如下:

總結(jié)

這里主要介紹了使用 docker 部署 tomact 并接入 skywalking 的使用,因?yàn)樵诰W(wǎng)上并沒有查到太多相關(guān)的信息,所以這里記錄下來,需要對有需求的小伙伴提供一些幫助。這里還是存在一些問題,比如這里 skywalking agent 直接打到鏡像文件里面并不友好,個人覺得可以自定義一個 tomcat 的基礎(chǔ)鏡像,并將 skywalking agent 打到基礎(chǔ)鏡像中,這樣所有的 tomcat 引用這個基礎(chǔ)鏡像來構(gòu)建鏡像,就可以實(shí)現(xiàn)接入 skywalking。如果是使用 k8s 部署的話,可以在 pod 中定義一個初始容器,在 pod 啟動時,將初始容器中的 skywalking agent 復(fù)制到我們的應(yīng)用中,關(guān)于如何在 k8s 使用 skywalking,并且無侵入的將 pod 的應(yīng)用接入 skywalking ,我將在下一篇文章中介紹。

到此這篇關(guān)于使用 docker部署tomcat并接入skywalking的使用的文章就介紹到這了,更多相關(guān) docker部署tomcat接入skywalking內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。

實(shí)時開通

自選配置、實(shí)時開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部