亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

 更新時(shí)間:2021年04月20日 11:00:53   作者:惜鳥  
這里主要介紹了使用 docker 部署 tomact 并接入 skywalking 的使用,因?yàn)樵诰W(wǎng)上并沒有查到太多相關(guān)的信息,所以這里記錄下來,需要對(duì)有需求的小伙伴提供一些幫助

一、概述

上一篇文章介紹了使用 docker 部署 spring boot 并接入 skywalking,其中描述了使用 docker-compose 搭建 skywalking,這一篇文章就不介紹 skywalking 的搭建了,這里主要記錄一下使用 docker 部署一個(gè) 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)用程序的啟動(dò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文件,有如下描述:

image.png

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

image.png

意思是:不要在catalina.sh這個(gè)腳本中設(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 放在一個(gè)可以訪問的目錄,我這里是測試,所以將 agent 目錄復(fù)制到了我的 Dockerfile 的同級(jí)目錄,其中 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",我們?cè)L問 skywalking ui 可以看到如下圖所示內(nèi)容:

image.png

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)控的信息如下:

image.png

總結(jié)

這里主要介紹了使用 docker 部署 tomact 并接入 skywalking 的使用,因?yàn)樵诰W(wǎng)上并沒有查到太多相關(guān)的信息,所以這里記錄下來,需要對(duì)有需求的小伙伴提供一些幫助。這里還是存在一些問題,比如這里 skywalking agent 直接打到鏡像文件里面并不友好,個(gè)人覺得可以自定義一個(gè) tomcat 的基礎(chǔ)鏡像,并將 skywalking agent 打到基礎(chǔ)鏡像中,這樣所有的 tomcat 引用這個(gè)基礎(chǔ)鏡像來構(gòu)建鏡像,就可以實(shí)現(xiàn)接入 skywalking。如果是使用 k8s 部署的話,可以在 pod 中定義一個(gè)初始容器,在 pod 啟動(dòng)時(shí),將初始容器中的 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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker?安裝?zeppeline的操作

    docker?安裝?zeppeline的操作

    Zeppelin是基于Jupyter Notebook技術(shù)開發(fā)的大數(shù)據(jù)交互分析服務(wù)軟件。接下來通過本文給大家介紹docker?安裝?zeppeline的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2022-01-01
  • docker-compose部署coredns如何實(shí)現(xiàn)自建DNS服務(wù)

    docker-compose部署coredns如何實(shí)現(xiàn)自建DNS服務(wù)

    本文介紹了如何在內(nèi)網(wǎng)中使用自建的CoreDNS服務(wù)進(jìn)行域名解析,通過配置Corefile和hosts文件,實(shí)現(xiàn)內(nèi)部域名解析,無需在互聯(lián)網(wǎng)上注冊(cè)域名,使用docker-compose運(yùn)行CoreDNS,并通過修改resolv.conf文件配置DNS服務(wù)
    2025-01-01
  • SpringCloud基于Docker和Docker-Compose的項(xiàng)目部署過程

    SpringCloud基于Docker和Docker-Compose的項(xiàng)目部署過程

    本文介紹了如何卸載舊版本Docker、更新系統(tǒng)、安裝Docker及其依賴,并設(shè)置國內(nèi)鏡像源以加快下載速度,詳細(xì)說明了如何安裝Docker Compose、配置鏡像加速器,并展示了如何使用Docker Compose部署SpringCloud項(xiàng)目,提供了更新和重啟容器的方法
    2024-10-10
  • MongoDB docker集群配置小結(jié)

    MongoDB docker集群配置小結(jié)

    本文主要介紹了MongoDB docker集群配置小結(jié),主要包括如何配置MongoDB的三個(gè)節(jié)點(diǎn),以及如何使用Docker Compose快速搭建集群,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09
  • 使用Docker搭建MySQL數(shù)據(jù)庫服務(wù)的方法詳解

    使用Docker搭建MySQL數(shù)據(jù)庫服務(wù)的方法詳解

    在現(xiàn)代應(yīng)用程序開發(fā)中,使用數(shù)據(jù)庫是必不可少的,文將介紹如何使用Docker搭建MySQL數(shù)據(jù)庫服務(wù),讓你在本地環(huán)境中快速部署一個(gè)MySQL實(shí)例,感興趣的可以了解下
    2024-03-03
  • Docker安裝FTP服務(wù)器的方法步驟

    Docker安裝FTP服務(wù)器的方法步驟

    FTP是一種傳輸協(xié)議,本文主要介紹了Docker安裝FTP服務(wù)器的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • docker 基于golang鏡像構(gòu)建 ssh服務(wù)的方法

    docker 基于golang鏡像構(gòu)建 ssh服務(wù)的方法

    這篇文章主要介紹了docker 基于golang鏡像構(gòu)建 ssh服務(wù)的方法,添加goland環(huán)境變量的方法及centos下sshd和goland環(huán)境的docker文件配置方法,需要的朋友可以參考下
    2021-07-07
  • docker運(yùn)行PostgreSQL數(shù)據(jù)庫維護(hù)執(zhí)行腳本備份數(shù)據(jù)庫與更新表結(jié)構(gòu)的方法

    docker運(yùn)行PostgreSQL數(shù)據(jù)庫維護(hù)執(zhí)行腳本備份數(shù)據(jù)庫與更新表結(jié)構(gòu)的方法

    這篇文章主要介紹了docker運(yùn)行PostgreSQL數(shù)據(jù)庫維護(hù),執(zhí)行腳本備份數(shù)據(jù)庫與更新表結(jié)構(gòu),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • docker之tomcat8.5容器中如何部署war包

    docker之tomcat8.5容器中如何部署war包

    文章介紹了如何使用Docker和docker-compose將一個(gè)Spring?Boot項(xiàng)目的WAR文件部署到Tomcat?8.5容器中,并詳細(xì)描述了創(chuàng)建和啟動(dòng)容器、配置數(shù)據(jù)庫連接以及打包和部署WAR文件的步驟
    2025-01-01
  • Docker 鏡像和容器的區(qū)別詳解

    Docker 鏡像和容器的區(qū)別詳解

    這篇文章主要介紹了Docker 鏡像和容器的區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下
    2016-10-10

最新評(píng)論