Docker部署SkyWalking_skywalking部署docker-程序员宅基地

技术标签: Docker部署  服务器  服务部署  skywalking  docker  

Docker部署SkyWalking

前置环境

docker 19.03.13
ElasticSearch 7.2.0

部署步骤

部署服务端 skywalking-oap

   -- 使用6.6.0版本的skywalking,先部署服务端
   docker run --name skywalking-oap \
       --restart always -d \
       -p 1234:1234 \
       -p 11800:11800 \
       -p 12800:12800 \
       -e TZ=Asia/Shanghai \
       -e SW_STORAGE=elasticsearch \
       -e SW_STORAGE_ES_CLUSTER_NODES=192.168.100.68:9200 \
       apache/skywalking-oap-server:6.6.0-es7
   -- 查询启动日志
   docker logs --tail=100 -f skywalking-oap
脚本说明
SW_STORAGE:指定数据源的存储方式,默认为H2
SW_STORAGE_ES_CLUSTER_NODES: 指定elsticsearch服务

部署UI skywalking-ui

   docker run -d --name skywalking-ui \
       --restart=always -d \
       -e TZ=Asia/Shanghai \
       -p 8072:8080  \
       -e SW_OAP_ADDRESS=192.168.100.18:12800 \
       apache/skywalking-ui:6.6.0
脚本说明
SW_OAP_ADDRESS: 指定oap服务地址

服务器java项目部署

源码包下载
-- 创建存放目录
mkdir -p  /home/jameli/docker/software/skywalking
-- 进入目录
cd /home/jameli/docker/software/skywalking
-- 下载agentjar
wget https://archive.apache.org/dist/skywalking/6.6.0/apache-skywalking-apm-6.6.0.tar.gz
-- 解压
tar -zxvf apache-skywalking-apm-6.6.0.tar.gz
Jar 直接启动
nohup java -javaagent:/home/jamelli/docker/software/skywalking/apache-skywalking-apm-bin/agent/skywalking-agent.jar \
    -Dskywalking.agent.service_name=xxx-xxx-server \
    -Dskywalking.collector.backend_service=192.168.100.18:11800 \
    -jar app.jar  --server.port=8073 >./test-oauth-server.txt &
脚本说明
javaagent: 指定oap解压的jar路径
service_name
docker启动
docker启动需要三个文件放在同目录

deploy.sh    发布脚本
Dockerfile  docker脚本
app.jar     需要运行的jar包

#启动脚本 
./deploy.sh xxx-xxx-server 8081 &

deploy.sh文件

##!/usr/bin/env bash

CONTAINER_NAME=$1
IMAGE_NAME=$1
PORT=$2

echo "正在重新部署 ${CONTAINER_NAME}"

# #停止正在运行的容器
docker stop ${
    CONTAINER_NAME}

# #删除旧容器
docker rm ${
    CONTAINER_NAME}

# #删除image,确保下载的是最新镜像
docker rmi ${
    IMAGE_NAME}

#构建镜像文件
docker build -t ${
    CONTAINER_NAME} .

#启动容器
docker run --name ${
    CONTAINER_NAME} \
        --net=host -d -p ${
    PORT} \
        -v /opt/docker/middleware/${
    CONTAINER_NAME}/logs/:/data/projects/logs/${
    CONTAINER_NAME}/  \
        -v /home/creationpoint/docker/software/skywalking/apache-skywalking-apm-bin/agent/:/home/creationpoint/docker/software/skywalking/apache-skywalking-apm-bin/agent/ \
        -m 2048m \
        --memory-swap=2724m \
        -c 2048 \
        ${
    CONTAINER_NAME}

echo "容器 ${CONTAINER_NAME} 重新部署成功"

docker logs -f ${
    CONTAINER_NAME}

Dockerfile文件

FROM openjdk:11-jre

COPY app.jar /app.jar

ENV TZ=Asia/Shanghai

ENTRYPOINT ["java", "-Xmx512m", "-Djava.security.egd=file:/dev/./urandom", "-javaagent:/home/creationpoint/docker/software/skywalking/apache-skywalking-apm-bin/agent/skywalking-agent.jar","-Dskywalking.agent.service_name=$SERVERNAME" "-Dskywalking.collector.backend_service=192.168.100.18:11800", "-jar", "/app.jar"]

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

CMD ["--spring.profiles.active=docker"]

$SERVERNAME 填写自己应用的名称 ,如 xxx-xxx-server
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Jamel_LiToo/article/details/109771940

智能推荐

安装keil5:1、闪退的问题_keil5点击打开,在打开界面缓冲,然后就闪退了?-程序员宅基地

闪退的问题:找文件替换图中所示的文件替换文件如下https://download.csdn.net/my_keil5点击打开,在打开界面缓冲,然后就闪退了?

Unity3D串口处理-程序员宅基地

最近公司用U3D开发一个应用,需要用到串口,便研究了两天串口编程,C#用SerialPort类实现串口编程,便开始使用SerialPort类编写代码。后来发现一个问题,Unity不支持DataReceived的方法。遇到这个问题很是棘手啊,后来在网上搜了一下,发现这个问题确实存在,解决的方法是开启两个线程,一个用来接收数据,一个用来处理数据。将两个线程分别放在FixedUpdate里面调用,这样便...

解决方案:rosdep init 或者rosdep update 连接错误的解决办法_rosdep init出错修改hosts-程序员宅基地

如果提示的是 ERROR: unable to process source https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/xxxxx 之类的错误,同时保证自己机器可以上百度的前提下,此时可能是因为raw.githubusercontent.com网站被墙了。解决办法是修改hosts文件,添加这个网站的ip地址#打开hosts文件sudo gedit /etc/hosts#在文件末尾添加151.101.84.133 r_rosdep init出错修改hosts

gradle报错:ERROR: Cannot read packageName from xxx\app\src\main\debug\AndroidMan-程序员宅基地

参考:Cannot read packageName from AndroidManifest.xml项目报错:ERROR: Cannot read packageName from E:\jdka\stark_50\stark_50\app\src\main\debug\AndroidManifest.xml原因:查看gradle文件发现:// 分模块,根据是否是debug,使用不...

用Python实现最小生成树的Prim算法-程序员宅基地

用Prim算法求解无向连通图的最小生成树:输入的图如下所示:期望得到的结果:输入例子如下所示:6 100 1 70 2 40 3 30 5 71 3 61 4 51 5 22 3 82 4 53 4 1代码如下:VexNumber,EdgeNumber=list(map(int,input().split()))#读取顶点...

android 消息系统Handler、MessageQueue、Looper源码学习-程序员宅基地

android消息系统整体框架如图所示 在安卓的消息系统中,每个线程有一个Looper,Looper中有一个MessageQueue,Handler向这个队列中投递Message,Looper循环拿出Message再交由Handler处理。整体是一个生产者消费者模式,这四部分也就构成了android的消息系统。 先来看一个最简单的例子 //这段代码在某个Activity的onC

随便推点

跨平台ls/dir实现-程序员宅基地

unix平台使用 opendir -> readdir、stat-> closedirwindows平台使用FindFirstFile -> FindNextFile -> FindClose#ifdef _WIN32#include <windows.h>#include <io.h>#else#include <dirent.h...

quick cocos2dx解决ByteArray中readchar负数不正常的问题_cocos bytearray-程序员宅基地

这个问题只在Android真机和模拟器下出现,MAC和player中均无此问题以下是出问题的代码local ba = cc.utils.ByteArray.new()ba:writeChar(-1)print("ba:readChar()", ba:readChar())此时打印出来的结果在Android真机(模拟器)上为0,而player中(win.mac)下均为-1,ios模拟_cocos bytearray

日志读取分析算法---大结局_系统日志 解析算法-程序员宅基地

日志读取分析算法 一,【前言】在所有业务系统中,不论是开发,部署,运维为了更好的发现问题,解决问题,我们都会首先从日志出发.但是有的日志我们是看不到的, 有的日志是会被系统本身吃掉,所以对于整个业务组,部署,运维来说,如果有一个日志系统专门来优化架构,优化业务系统就能大大的提升效率了. 那业务系统中怎么读取日志呢?二,【详情】 1,读取方式:(1)读一行(2)读所有(3)分级别读,,,, 2,..._系统日志 解析算法

计算机图形消隐算法,计算机图形学大作业 课程设计 实验报告 消隐算法.doc-程序员宅基地

计算机图形学大作业 课程设计 实验报告 消隐算法安徽建筑工业学院计算机图形学 大作业大作业名称: 消隐算法 演示院(系)名称:专 业:班 级:姓 名:学 号:指 导 老 师:2011 ~ 2012年度第 一 学期计算机图形学——消隐算法设计目的:通过检测可见面,消除隐藏线和隐藏面,以在二维平面上显示具有真实感图形。消除隐藏线和隐藏面..._交叉条消隐总体设计

[Python嗯~机器学习]---对互信息的理解_互信息为负的意义-程序员宅基地

互信息通过上图可以看出,所谓互信息就是两个事件都有的信息量。于是,在互信息定义的基础上使用jessen不等式,我们可以证明 是非负的,因此 ,这里我们给出 的详细推导:上面其他性质的证明类似。  直观地说,如果把熵 看作一个随机变量不确定度的量度,那么 就是 没有涉及到的 的部分的不确定度的量度。这就是“在 已知之后 的剩余不确定度的量”,于是第一个等式的右边就..._互信息为负的意义

掌握SSH这篇就够了_haojunyu2012的博客-程序员宅基地

SSH 是每一台电脑的标准配置,Linux 就不必说了,连 windows 也从 2018 年开始自带 OpenSSH 了。它主要的用途是登陆到远程电脑中执行命令,在云开发的时代,它是每个程序每天都要用到的工具。本文将简单介绍一下它的原理,基本用法以及端口转发和动态转发等高阶用法。介绍SSH 叫安全外壳协议(Secure Shell),是一种加密的网络传输协议,可在不安全的网络中网络服务提供安全的传输环境。它通过在网络中创建安全隧道来实现 SSH 客户端和服务器之间的连接。最早的时候,互联网通信都是

推荐文章

热门文章

相关标签