| import{_ as o,r as i,o as p,c,a as l,d as s,e as n,b as e,f as t}from"./app-5cdcb249.js";const r={},u=s("h1",{id:"docker部署",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#docker部署","aria-hidden":"true"},"#"),n(" docker部署")],-1),d={href:"https://hub.docker.com/r/apache/iotdb",target:"_blank",rel:"noopener noreferrer"},k=s("br",null,null,-1),v=t(`<h2 id="docker镜像安装-单机版" tabindex="-1"><a class="header-anchor" href="#docker镜像安装-单机版" aria-hidden="true">#</a> docker镜像安装(单机版)</h2><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code><span class="token comment"># 获取镜像</span> |
| <span class="token function">docker</span> pull apache/iotdb:1.1.0-standalone |
| <span class="token comment"># 创建 docker bridge 网络</span> |
| <span class="token function">docker</span> network create <span class="token parameter variable">--driver</span><span class="token operator">=</span>bridge <span class="token parameter variable">--subnet</span><span class="token operator">=</span><span class="token number">172.18</span>.0.0/16 <span class="token parameter variable">--gateway</span><span class="token operator">=</span><span class="token number">172.18</span>.0.1 iotdb |
| <span class="token comment"># 创建 docker 容器</span> |
| <span class="token comment"># 注意:必须固定IP部署。IP改变会导致 confignode 启动失败。</span> |
| <span class="token function">docker</span> run <span class="token parameter variable">-d</span> <span class="token parameter variable">--name</span> iotdb-service <span class="token punctuation">\\</span> |
| <span class="token parameter variable">--hostname</span> iotdb-service <span class="token punctuation">\\</span> |
| <span class="token parameter variable">--network</span> iotdb <span class="token punctuation">\\</span> |
| <span class="token parameter variable">--ip</span> <span class="token number">172.18</span>.0.6 <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-p</span> <span class="token number">6667</span>:6667 <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">cn_internal_address</span><span class="token operator">=</span>iotdb-service <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">cn_target_config_node_list</span><span class="token operator">=</span>iotdb-service:10710 <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">cn_internal_port</span><span class="token operator">=</span><span class="token number">10710</span> <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">cn_consensus_port</span><span class="token operator">=</span><span class="token number">10720</span> <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_rpc_address</span><span class="token operator">=</span>iotdb-service <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_internal_address</span><span class="token operator">=</span>iotdb-service <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_target_config_node_list</span><span class="token operator">=</span>iotdb-service:10710 <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_mpp_data_exchange_port</span><span class="token operator">=</span><span class="token number">10740</span> <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_schema_region_consensus_port</span><span class="token operator">=</span><span class="token number">10750</span> <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_data_region_consensus_port</span><span class="token operator">=</span><span class="token number">10760</span> <span class="token punctuation">\\</span> |
| <span class="token parameter variable">-e</span> <span class="token assign-left variable">dn_rpc_port</span><span class="token operator">=</span><span class="token number">6667</span> <span class="token punctuation">\\</span> |
| apache/iotdb:1.1.0-standalone |
| <span class="token comment"># 尝试使用命令行执行SQL</span> |
| <span class="token function">docker</span> <span class="token builtin class-name">exec</span> <span class="token parameter variable">-ti</span> iotdb-service /iotdb/sbin/start-cli.sh <span class="token parameter variable">-h</span> iotdb-service |
| </code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>外部连接:</p><div class="language-bash line-numbers-mode" data-ext="sh"><pre class="language-bash"><code><span class="token comment"># <主机IP/hostname> 是物理机的真实IP或域名。如果在同一台物理机,可以是127.0.0.1。</span> |
| <span class="token variable">$IOTDB_HOME</span>/sbin/start-cli.sh <span class="token parameter variable">-h</span> <span class="token operator"><</span>主机IP/hostname<span class="token operator">></span> <span class="token parameter variable">-p</span> <span class="token number">6667</span> |
| </code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div></div></div><div class="language-yaml line-numbers-mode" data-ext="yml"><pre class="language-yaml"><code><span class="token comment"># docker-compose-1c1d.yml</span> |
| <span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">"3"</span> |
| <span class="token key atrule">services</span><span class="token punctuation">:</span> |
| <span class="token key atrule">iotdb-service</span><span class="token punctuation">:</span> |
| <span class="token key atrule">image</span><span class="token punctuation">:</span> apache/iotdb<span class="token punctuation">:</span>1.1.0<span class="token punctuation">-</span>standalone |
| <span class="token key atrule">hostname</span><span class="token punctuation">:</span> iotdb<span class="token punctuation">-</span>service |
| <span class="token key atrule">container_name</span><span class="token punctuation">:</span> iotdb<span class="token punctuation">-</span>service |
| <span class="token key atrule">ports</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> <span class="token string">"6667:6667"</span> |
| <span class="token key atrule">environment</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> cn_internal_address=iotdb<span class="token punctuation">-</span>service |
| <span class="token punctuation">-</span> cn_internal_port=10710 |
| <span class="token punctuation">-</span> cn_consensus_port=10720 |
| <span class="token punctuation">-</span> cn_target_config_node_list=iotdb<span class="token punctuation">-</span>service<span class="token punctuation">:</span><span class="token number">10710</span> |
| <span class="token punctuation">-</span> dn_rpc_address=iotdb<span class="token punctuation">-</span>service |
| <span class="token punctuation">-</span> dn_internal_address=iotdb<span class="token punctuation">-</span>service |
| <span class="token punctuation">-</span> dn_rpc_port=6667 |
| <span class="token punctuation">-</span> dn_mpp_data_exchange_port=10740 |
| <span class="token punctuation">-</span> dn_schema_region_consensus_port=10750 |
| <span class="token punctuation">-</span> dn_data_region_consensus_port=10760 |
| <span class="token punctuation">-</span> dn_target_config_node_list=iotdb<span class="token punctuation">-</span>service<span class="token punctuation">:</span><span class="token number">10710</span> |
| <span class="token key atrule">volumes</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> ./data<span class="token punctuation">:</span>/iotdb/data |
| <span class="token punctuation">-</span> ./logs<span class="token punctuation">:</span>/iotdb/logs |
| <span class="token key atrule">networks</span><span class="token punctuation">:</span> |
| <span class="token key atrule">iotdb</span><span class="token punctuation">:</span> |
| <span class="token key atrule">ipv4_address</span><span class="token punctuation">:</span> 172.18.0.6 |
| |
| <span class="token key atrule">networks</span><span class="token punctuation">:</span> |
| <span class="token key atrule">iotdb</span><span class="token punctuation">:</span> |
| <span class="token key atrule">external</span><span class="token punctuation">:</span> <span class="token boolean important">true</span> |
| </code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="docker镜像安装-集群版" tabindex="-1"><a class="header-anchor" href="#docker镜像安装-集群版" aria-hidden="true">#</a> docker镜像安装(集群版)</h2>`,6),b={href:"https://github.com/apache/iotdb/tree/master/docker/src/main/DockerCompose/docker-compose-cluster-1c2d.yml",target:"_blank",rel:"noopener noreferrer"},m=t(`<p>假如有三台物理机,它们的hostname分别是iotdb-1、iotdb-2、iotdb-3。依次启动。<br> 以 iotdb-2 节点的docker-compose文件为例:</p><div class="language-yaml line-numbers-mode" data-ext="yml"><pre class="language-yaml"><code><span class="token key atrule">version</span><span class="token punctuation">:</span> <span class="token string">"3"</span> |
| <span class="token key atrule">services</span><span class="token punctuation">:</span> |
| <span class="token key atrule">iotdb-confignode</span><span class="token punctuation">:</span> |
| <span class="token key atrule">image</span><span class="token punctuation">:</span> apache/iotdb<span class="token punctuation">:</span>1.1.0<span class="token punctuation">-</span>confignode |
| <span class="token key atrule">container_name</span><span class="token punctuation">:</span> iotdb<span class="token punctuation">-</span>confignode |
| <span class="token key atrule">environment</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> cn_internal_address=iotdb<span class="token punctuation">-</span><span class="token number">2</span> |
| <span class="token punctuation">-</span> cn_target_config_node_list=iotdb<span class="token punctuation">-</span>1<span class="token punctuation">:</span><span class="token number">10710</span> |
| <span class="token punctuation">-</span> schema_replication_factor=3 |
| <span class="token punctuation">-</span> cn_internal_port=10710 |
| <span class="token punctuation">-</span> cn_consensus_port=10720 |
| <span class="token punctuation">-</span> schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus |
| <span class="token punctuation">-</span> config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus |
| <span class="token punctuation">-</span> data_replication_factor=3 |
| <span class="token punctuation">-</span> data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus |
| <span class="token key atrule">volumes</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> /etc/hosts<span class="token punctuation">:</span>/etc/hosts<span class="token punctuation">:</span>ro |
| <span class="token punctuation">-</span> ./data/confignode<span class="token punctuation">:</span>/iotdb/data |
| <span class="token punctuation">-</span> ./logs/confignode<span class="token punctuation">:</span>/iotdb/logs |
| <span class="token key atrule">network_mode</span><span class="token punctuation">:</span> <span class="token string">"host"</span> |
| |
| <span class="token key atrule">iotdb-datanode</span><span class="token punctuation">:</span> |
| <span class="token key atrule">image</span><span class="token punctuation">:</span> apache/iotdb<span class="token punctuation">:</span>1.1.0<span class="token punctuation">-</span>datanode |
| <span class="token key atrule">container_name</span><span class="token punctuation">:</span> iotdb<span class="token punctuation">-</span>datanode |
| <span class="token key atrule">environment</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> dn_rpc_address=iotdb<span class="token punctuation">-</span><span class="token number">2</span> |
| <span class="token punctuation">-</span> dn_internal_address=iotdb<span class="token punctuation">-</span><span class="token number">2</span> |
| <span class="token punctuation">-</span> dn_target_config_node_list=iotdb<span class="token punctuation">-</span>1<span class="token punctuation">:</span><span class="token number">10710</span> |
| <span class="token punctuation">-</span> data_replication_factor=3 |
| <span class="token punctuation">-</span> dn_rpc_port=6667 |
| <span class="token punctuation">-</span> dn_mpp_data_exchange_port=10740 |
| <span class="token punctuation">-</span> dn_schema_region_consensus_port=10750 |
| <span class="token punctuation">-</span> dn_data_region_consensus_port=10760 |
| <span class="token punctuation">-</span> data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus |
| <span class="token punctuation">-</span> schema_replication_factor=3 |
| <span class="token punctuation">-</span> schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus |
| <span class="token punctuation">-</span> config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus |
| <span class="token key atrule">volumes</span><span class="token punctuation">:</span> |
| <span class="token punctuation">-</span> /etc/hosts<span class="token punctuation">:</span>/etc/hosts<span class="token punctuation">:</span>ro |
| <span class="token punctuation">-</span> ./data/datanode<span class="token punctuation">:</span>/iotdb/data/ |
| <span class="token punctuation">-</span> ./logs/datanode<span class="token punctuation">:</span>/iotdb/logs/ |
| <span class="token key atrule">network_mode</span><span class="token punctuation">:</span> <span class="token string">"host"</span> |
| </code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>注意:</p><ol><li><code>dn_target_config_node_list</code>所有节点配置一样,需要配置第一个启动的节点,这里为<code>iotdb-1</code>。</li><li>上面docker-compose文件中,<code>iotdb-2</code>需要替换为每个节点的 hostname、域名或者IP地址。</li><li>需要映射<code>/etc/hosts</code>,文件内配置了 iotdb-1、iotdb-2、iotdb-3 与IP的映射。或者可以在 docker-compose 文件中增加 <code>extra_hosts</code> 配置。</li><li>首次启动时,必须首先启动 <code>iotdb-1</code>。</li><li>如果部署失败要重新部署集群,必须将所有节点上的IoTDB服务停止并删除,然后清除<code>data</code>和<code>logs</code>文件夹后,再启动。</li></ol>`,4);function _(h,g){const a=i("ExternalLinkIcon");return p(),c("div",null,[l(` |
| |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| `),u,s("p",null,[n("Apache IoTDB 的 Docker 镜像已经上传至 "),s("a",d,[n("https://hub.docker.com/r/apache/iotdb"),e(a)]),n("。"),k,n(" Apache IoTDB 的配置项以环境变量形式添加到容器内。")]),v,s("p",null,[n("目前只支持 host 网络和 overlay 网络,不支持 bridge 网络。overlay 网络参照"),s("a",b,[n("1C2D"),e(a)]),n("的写法,host 网络如下。")]),m])}const y=o(r,[["render",_],["__file","Docker-Install.html.vue"]]);export{y as default}; |