diff --git a/dev-support/README.md b/dev-support/README.md index 4f9f3d4a7..570bfd2bc 100644 --- a/dev-support/README.md +++ b/dev-support/README.md @@ -30,38 +30,31 @@ yum install -y git docker ``` ### **Step 2**: Download Bigtop Manager source ```shell -git clone https://github.com/kevinw66/bigtop-manager.git +git clone https://github.com/apache/bigtop-manager.git ``` > You need to change the `node.version` in the `pom.xml` file under the `bigtop-manager-ui` module to `16.x` if you are using CentOS-7. -### **Step 3**: Enter workspace -**RHEL (Rocky 8) :** -```shell -cd bigtop-manager/dev-support/docker/rocky8/ -``` -### **Step 4**: Build develop basic image +### **Step 3**: Build develop basic image Run the setup command, you will get `bigtop-manager/develop:trunk-rocky-8` image. It has the enviroment needed to compile Bigtop-Manager and run servers such as Bigtop-Manager Server, Bigtop-Manager Agent, Mysql, etc. **RHEL (Rocky 8) :** ```shell -./build-image.sh +/bin/bash dev-support/docker/image/build.sh trunk-rocky-8 ``` -### **Step 5**: Build source & create cluster +### **Step 4**: Build source & create cluster * Bigtop Manager UI、Bigtop Manager Server Debug Port、MariaDB Server are also exposed to local ports: 8080、5005、3306. * Docker hostnames are: bigtop-manager-server、bigtop-manager-agent-01、bigtop-manager-agent-02. **RHEL (Rocky 8) :** ```shell -./build-containers.sh +/bin/bash dev-support/docker/containers/build-containers.sh -e postgres -c 3 -o trunk-rocky-8 [--skip-build] ``` -### **Step 6**: Insert data to Database -Copy SQL on `dev-support/example/bigtop_manager/user.sql` and run on mysql database `bigtop_manager` which is installed in container bigtop-manager-server. -### **Step 7**: Access Web UI +### **Step 5**: Access Web UI Now you can access Web UI which exposes on `http://localhost:8080`. Log in with username `admin` and password `admin`. -### **Step 8**: Clear cluster +### **Step 6**: Clear cluster Clean up the containers when you are done developing or testing. **RHEL (Rocky 8) :** ```shell -./clear-containers.sh +/bin/bash dev-support/docker/containers/build-containers.sh -d ``` diff --git a/dev-support/docker/bm-containers/build.sh b/dev-support/docker/containers/build.sh similarity index 100% rename from dev-support/docker/bm-containers/build.sh rename to dev-support/docker/containers/build.sh diff --git a/dev-support/docker/image/Dockerfile b/dev-support/docker/image/Dockerfile new file mode 100644 index 000000000..2d94ed74f --- /dev/null +++ b/dev-support/docker/image/Dockerfile @@ -0,0 +1,33 @@ +# 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. + +FROM rockylinux:8 + +MAINTAINER dev@bigtop.apache.org + +RUN yum -y install sudo wget openssh-clients openssh-server vim mariadb mariadb-server net-tools chrony krb5-server krb5-libs krb5-workstation git rpm-build python3 procps-ng +RUN wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz -O /tmp/jdk.tar.gz --no-check-certificate \ + && mkdir -p /usr/local/java && tar -xzf /tmp/jdk.tar.gz -C /usr/local/java --strip-components=1 \ + && rm -f /tmp/jdk.tar.gz \ + && ln -s /usr/local/java/bin/java /usr/bin/java +RUN wget https://archive.apache.org/dist/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz -O /tmp/apache-maven.tar.gz --no-check-certificate \ + && mkdir -p /usr/share/maven && tar -xzf /tmp/apache-maven.tar.gz -C /usr/share/maven --strip-components=1 \ + && rm -f /tmp/apache-maven.tar.gz \ + && ln -s /usr/share/maven/bin/mvn /usr/bin/mvn +RUN wget https://raw.githubusercontent.com/gdraheim/docker-systemctl-replacement/master/files/docker/systemctl3.py -O /usr/bin/systemctl + +RUN /bin/sed -i 's,# StrictHostKeyChecking ask,StrictHostKeyChecking no,g' /etc/ssh/ssh_config + +RUN ssh-keygen -f "/root/.ssh/id_rsa" -N "" diff --git a/dev-support/docker/bm-image/Dockerfile.template b/dev-support/docker/image/Dockerfile.template similarity index 100% rename from dev-support/docker/bm-image/Dockerfile.template rename to dev-support/docker/image/Dockerfile.template diff --git a/dev-support/docker/bm-image/build.sh b/dev-support/docker/image/build.sh similarity index 100% rename from dev-support/docker/bm-image/build.sh rename to dev-support/docker/image/build.sh