docker内访问tdengine服务

这篇具有很好参考价值的文章主要介绍了docker内访问tdengine服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

踩坑记

springboot项目使用docker部署。由于tdengine原生连接方式需要安装客户端,第一想法是宿主机装好客户端,然后映射驱动到容器内部,网上找的教程也基本是这种思路。尝试了一天失败了。

错误1:libjemalloc.so.2 file: No such file or directory。大概意思就是没有这个文件嘛。进入容器内部试了一下确实没有。那就安装一个呗

错误2:java.lang.UnsatisfiedLinkError: /usr/lib/libtaos.so: /usr/lib/x86_64-linux-gnu/libjemalloc.so.2: cannot allocate memory in static TLS block

到这个错误感觉是思路错了。百度第一个错误基本没有解决方案。tdengine官方找文档、群里问别人都是个蛋。然后重点来了去github上搜issue就找到相同的错误1。得到的解决方案是直接在容器内部安装客户端

Caused by: java.lang.UnsatisfiedLinkError: /usr/lib/libtaos.so.3.0.4.0: libjemalloc.so.2: cannot open shared object file: No such file or directory · Issue #20988 · taosdata/TDengine · GitHub

宿主机安装客户端其实是可以的,但是可能是我使用的版本问题导致的

docker内访问tdengine服务,docker,tdengine,运维

问其他大佬说是可以成功的就映射两个文件 

-v /etc/taos/taos.cfg:/etc/taos/taos.cfg \

-v /usr/lib/libtaos.so:/usr/lib/libtaos.so \

确定走方案2 容器内部安装客户端。基本就是改dockerfile了

1.下载对应的客户端,放入dockerfile所在文件夹。对的客户端很重要不然会连接失败

建立连接 | TDengine 文档 | 涛思数据

docker内访问tdengine服务,docker,tdengine,运维

 2.dockerfile内也就是添加几句,copy、解压、执行脚本

# 复制到tmp文件夹下
COPY TDengine-client-3.0.5.0-Linux-x64.tar.gz /tmp
# 切换文件夹
WORKDIR /tmp
# 解压
RUN tar xvf TDengine-client-3.0.5.0-Linux-x64.tar.gz
RUN ls
# 切换文件夹
WORKDIR /tmp/TDengine-client-3.0.5.0
RUN ls
# 执行安装脚本
RUN bash install_client.sh

# 可以删除安装包减少容器体积

3.安装完成后需要编辑 taos.cfg 文件

这里可以修改宿主机文件如何映射到容器内部。(默认路径/etc/taos/taos.cfg),将 firstEP 修改为 TDengine 服务器的 End Point,例如:h1.tdengine.com:6030。

总结:坑多报错别百度(看情况哈),说是国内数据库国内教程却少的可怜、遇到报错去github里面搜Issue估计还来的快里面我看已经记录了991个问题。

加个官方群吧没社区(github算吗)群里提问还是会有人解答一下的,但是效率不高提问的人太多。

多看文档、这不是mysql那些数据库先入为主的想法会让自己走很多弯路,文档里面很多细节会忽略掉。像数据库原生、rest连接字符串都不知道是个啥为啥会有两个呀没细看文档满脑疑问,那些个创建表语句写一个给你来一个。

下载的客户端里面有代码示例,可以打开看看代码,复制sql、代码比自己一步步去试探语法来的快。文章来源地址https://www.toymoban.com/news/detail-651080.html

到了这里,关于docker内访问tdengine服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker 运行 tdengine 并且mybatis 连接

    指定 hostname,客户端连接的时候会用到。 指定 版本,因为后面的安装的客户端和java连接时使用的驱动,需要匹配。 下载clien 包: TDengine-client-2.6.0.34-Windows-x64.exe 安装驱动包 用 SwitchHosts 工具修改 hosts 文件,linux 下直接修改 hosts文件即可。添加如下代码: window 下,进入 C:T

    2024年02月20日
    浏览(37)
  • Docker服务无法被访问

    最近在准备做项目时,在Docker部署服务时出现了问题。使用Docker部署的服务,宿主机无法进行访问。 这方面的原因有很多,需要进行逐一排查。 安装nginx 运行nginx 宿主机进行通过浏览器访问 localhost:8080 ,如果访问成功说明docker网络环境没问题,很大概率是容器和镜像的配置

    2024年02月04日
    浏览(24)
  • 体验感极好,docker爱好者福音,1Panel服务器运维管理面板使用引导功能介绍

    目录 一.介绍 二.特点 1.服务器管理便捷高效 2.资源实时监控 3.日志管理 4.远程终端访问 5.防护性较强 6.功能强大 三.与1Panel交流讨论 1.官网主页 2.微信公众号 3.哔哩哔哩账户 四.获取1Panel 1.进入官网,已提供安装方式 2.按提示安装 3.部署完成后之后要查看入口和用户密码信息

    2024年02月04日
    浏览(58)
  • docker启动容器服务之后访问失败

    注:在进行docker容器启动宿主机进行容器访问时,无需进行网络的配置,docker容器在启动时会自动解决 第一种原因及修改方法 在进行启动的时候,启动语句中没有进行端口映射,导致在进行访问的时候无法找到正确的端口 正确的镜像的启动方式为 正常容器启动后的截图 进

    2024年02月02日
    浏览(44)
  • docker部署,服务器本地访问正常,无法通过ip+端口访问

    在服务器使用docker部署应用的时候,网站本地访问正常,但是无法使用IP地址访问,防火墙端口已经放行(本人服务器系统CentOS 7) 经过一番查找,发现Linux系统中有一个net.ipv4.ip_forward参数,可以设置为0和1 出于安全考虑,Linux系统默认是禁止数据包转发的。所谓转发即当主机

    2024年02月13日
    浏览(64)
  • TDengine初试 | TD服务器安装与参数配置 | TD客户端安装与配置 | 使用DBeaver工具连接到TDengine服务器端

    零、背景   在debian11系统(开发板)上安装TD服务器,在Window11上安装TD客户端。然后在Windows11上面使用DBeaver工具连接TDengine服务器端数据库中。 一、TDengine的下载 下载的版本是3.0.2.6 TDengine-server-3.0.2.6-Linux-arm64.tar.gz TDengine-client-3.0.2.6-Windows-x64.exe taosTools-2.5.2-Linux-arm64-comp3.

    2024年01月18日
    浏览(53)
  • TDengine服务器与客户端安装

    TDengine官网: https://docs.taosdata.com/get-started/package/ https://www.taosdata.com/assets-download/3.0/TDengine-server-3.0.4.1-Linux-x64.tar.gz tar -zxvf TDengine-server- version -Linux-x64.tar.gz tar -zxvf TDengine-server-3.0.4.1-Linux-x64.tar.gz 安装脚本在执行过程中,会通过命令行交互界面询问一些配置信息。如果希望采取无

    2024年02月05日
    浏览(80)
  • docker发布的服务无法访问-端口不通问题解决

    具体问题是这样的:我用docker部署了一个图床服务,映射的端口是8090,服务起来后,一切正常,但是在其他服务器上无法访问8090端口(浏览器访问或者telnet不通),防火墙已经放开了这个端口,当时我就很奇怪了,也没报什么错误。后来删除容器重试了几次抛出一个警告,

    2024年02月13日
    浏览(44)
  • docker内部如何访问宿主机上的服务或者应用

    在docker启动的容器中需要访问宿主机上的服务,所以在容器中通过localhost或者127.0.0.1 。但是这样是不行的。 访问url:http://127.0.0.1:8088 或者http://localhost:8088 docker是一个虚拟环境,127.0.0.1和localhost指的是虚拟环境内部,而不是外部宿主机,所以无法这样访问. 对于mac和windows,可以使

    2024年02月15日
    浏览(34)
  • 解决windows无法访问wsl下docker服务

    笔者在初学使用wsl跑docker时,遇到了windows无法访问的问题,并且浏览了大部分的文章,发现并没有起效,在反复试错终于成功之后,总结为以下几点: 1.升级至wsl2 2.将.wslconfig文件(用户文件夹下)中的如下镜像服务关闭删除 3.打开wsl防火墙相应的端口 4.使wsl与docker容器端口一致 后续

    2024年03月17日
    浏览(71)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包