国产IOTDB(1.3.2):第1集 本地Docker部署之1

其次简单概述:

        本篇讲述的是怎么通过docker部署iotdb(1.3.2)的数据库,不会讲解最基础的docker知识,本人也不是系统学习的docker,就是当年跟着博客启动了几个docker学习了一下,但是本人大学时候学习的计算机网络,毕业后没有都“扔”了,可能接受学习起来会快一点,每个人都不一样,但是建议多跟博客、网络文章学习。下面是两个链接,一个是apache的、一个是天谋的,就是开源版本与企业版本的链接(其实都一样)。还是那句话不会docker的先去学习docker去,一步一个脚印!急于求成往往“走火入魔”,或者留下一坑酸菜!

docker部署 | IoTDB Website (apache.org)

docker部署_天谋IoTDB (timecho.com)

额外话:

        本想把这段放在最后,想想可能有新手看到,就放到这里了。是我根据自身对网络和docker的理解,可能有误,都是成年人,自己分别。在路由器里面都有路由表,上网域名也需要域名解析,其实都是记录了对方的ip,个人理解在k8s里面什么pod啊,或者说通过ServiceName去寻找对应的服务(本人不会k8s,听同事和网络所得,没有去研究,太忙了)。或者类似的情景下。个人建议直接ip地址规划然后进行绑定!这样不会出现漂移,不会出现重启后路由表(暂且这么说)记录的ip和内部随机分配的ip不一致的情况(这种可能现象就是开始访问不到,多试几次就可以了)。上面官方的链接里面也只是在单机下配置了ip,在集群下没有。但是我个人会先划分好网段,然后不管是单机还是集群都绑定好内部网段的ip!记住是内部网段!内部网段!(我强调了三次,本想列出来内部网段都是哪些,但是请看官们动动手吧,有经历,学习到的才是自己的。)这样如果集群在不同的物理机上面,很容易区分出来哪个机器不正常,而不是需要再看一些配置或者状态。(我这边的情况可能和你的不一样,但是以你为准……)

        由于都绑定了ip这样不管哪个节点怎么重启,“路由表”的信息都不会变,都可以“一条道走到黑!”

开始部署:

 1.下载镜像

   (写文章的时候,可能需要一些魔法才能下载,多搜搜教程吧。)

 官网上还是1.3.0 所以记得修改版本号

docker pull apache/iotdb:1.3.2-standalone

如果遇到需要下载特定平常的情况可以参照下面的语句

docker pull --platform=linux/amd64 apache/iotdb:1.3.2-standalone

2.临时启动

为啥要临时启动,我只能说按照我这边的情况,我需要先把容器启动起来,把关键配置copy出来然后,修改dockercompose中的配置,挂载目录,这样后期修改参数的话,就不需要进入容器里面,也不担心服务器重启,配置还原的情况出现。(这段主要还是给新手说的。)

首先创建网关:

docker network create --driver=bridge --subnet=172.18.0.0/16 --gateway=172.88.0.1 iotdb

其次编写docker-compose

# docker-compose.yml
# 在所在文件目录执行 docker-compose up -d即可

version: "3"
services:
  iotdb-service:
    image: apache/iotdb:1.3.2-standalone
    hostname: iotdb-service
    container_name: iotdb-service
    ports:
      - "6667:6667"
    environment:
      - cn_internal_address=iotdb-service
      - cn_internal_port=10710
      - cn_consensus_port=10720
      - cn_seed_config_node=iotdb-service:10710
      - dn_rpc_address=iotdb-service
      - dn_internal_address=iotdb-service
      - dn_rpc_port=6667
      - dn_mpp_data_exchange_port=10740
      - dn_schema_region_consensus_port=10750
      - dn_data_region_consensus_port=10760
      - dn_seed_config_node=iotdb-service:10710
    volumes:
        - ./data:/iotdb/data
        - ./logs:/iotdb/logs
    networks:
      iotdb:
        ipv4_address: 172.18.0.6

networks:
  iotdb:
    external: true

新手注意:上面的文件的文件名就是docker-compose.yml啊!要在文件所在目录执行docker-compose up -d 还是那句话不会docker的先去学docker。上面已经换成了目前最新的1.3.2 。

还有得先创建网关!如果dockercompose启动不起来把上面的version: "3" 变成version: "2"试试。顺便贴出我这用的版本:

3.复制文件、映射目录

附上官方的说明

新手注意 ./意味的是当面目录,说的是docker-compose.yml所在的目录,可以用绝对路径,看你实际情况,以你为准!

未完待续……

新手作业:

上面最后的图,是官方的介绍内容。这里有个问题就是文件需要从容器里面复制出来(作业1)。

作业2:为啥在dockercompose里设定了 hostname (其实官方有解答,请参考我最开始额外话)。

可能用到的命令(偷懒的直接看吧)

docker cp iotdb-service:/iotdb/conf /opt/iotdb_132/
chmod -R 777 /opt/iotdb_132/

作业3:为啥可能用到chmod -R 777 /opt/iotdb_132/ 

欢迎留言……

最后:

希望新手能够一步步走,多思考,老手请忽略,上面对新手来说已经有一点难度了(聪明的你当我没说)。建议在虚拟环境里弄,还有注意备份,万一哪里不合适可以还原啊!可以还原的!还原!然后继续加油💪🏻!

        此外,多看看官方文档,这是我遇到过的写的不错的了,多看,多看,多看!然后根据自己的实际情况,看看上面的dockercompose需不需要增加什么……🤔

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值