| # |
| # 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. |
| # |
| |
| # docker build context is the root path of the repository |
| |
| FROM eclipse-temurin:17-jre-focal |
| |
| ADD distribution/target/apache-iotdb-*-all-bin.zip / |
| ADD docker/src/main/DockerCompose/start-1c1d.sh / |
| |
| RUN apt update \ |
| && apt install lsof dos2unix procps unzip -y \ |
| && unzip /apache-iotdb-*-bin.zip -d / \ |
| && rm /apache-iotdb-*-bin.zip \ |
| && mv /apache-iotdb-* /iotdb \ |
| && mv /start-1c1d.sh /iotdb/sbin \ |
| && sed -i 's/dn_internal_address=127.0.0.1/dn_internal_address=0.0.0.0/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/cn_internal_address=127.0.0.1/cn_internal_address=0.0.0.0/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/cn_seed_config_node=127.0.0.1:10710/cn_seed_config_node=0.0.0.0:10710/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/dn_seed_config_node=127.0.0.1:10710/dn_seed_config_node=0.0.0.0:10710/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/# config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus/config_node_consensus_protocol_class=org.apache.iotdb.consensus.simple.SimpleConsensus/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/# schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus/schema_region_consensus_protocol_class=org.apache.iotdb.consensus.simple.SimpleConsensus/g' /iotdb/conf/iotdb-system.properties \ |
| && sed -i 's/# data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus/data_region_consensus_protocol_class=org.apache.iotdb.consensus.simple.SimpleConsensus/g' /iotdb/conf/iotdb-system.properties \ |
| && apt remove unzip -y \ |
| && apt autoremove -y \ |
| && apt purge --auto-remove -y \ |
| && apt clean -y \ |
| RUN dos2unix /iotdb/sbin/start-1c1d.sh |
| RUN dos2unix /iotdb/sbin/iotdb-common.sh |
| RUN dos2unix /iotdb/sbin/start-confignode.sh |
| RUN dos2unix /iotdb/sbin/../conf/confignode-env.sh |
| RUN dos2unix /iotdb/sbin/stop-confignode.sh |
| RUN dos2unix /iotdb/sbin/start-datanode.sh |
| RUN dos2unix /iotdb/sbin/../conf/datanode-env.sh |
| EXPOSE 6667 |
| VOLUME /iotdb/data |
| VOLUME /iotdb/logs |
| ENV PATH="/iotdb/sbin/:/iotdb/tools/:${PATH}" |
| ENTRYPOINT ["/iotdb/sbin/start-1c1d.sh"] |