blob: 72143e64003e2be9ae973a6bba8490c66fad64c7 [file] [log] [blame] [view]
<!--
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.
-->
## Doris Develop Environment based on docker
### Preparation
1. Download the Doris code repo
```console
$ cd /to/your/workspace/
$ git clone https://github.com/apache/doris.git
$ cd doris
$ git submodule update --init --recursive
```
You can remove the `.git` dir in `doris/` to make the dir size smaller.
So that the following generated docker image can be smaller.
2. Copy Dockerfile
```console
$ cd /to/your/workspace/
$ cp doris/docker/Dockerfile ./
```
After preparation, your workspace should like this:
```
.
├── Dockerfile
├── doris
│   ├── be
│   ├── bin
│   ├── build.sh
│   ├── conf
│   ├── DISCLAIMER-WIP
│   ├── docker
│   ├── docs
│   ├── env.sh
│   ├── fe
│   ├── ...
```
### Build docker image
```console
$ cd /to/your/workspace/
$ docker build -t doris:v1.0 .
```
> `doris` is docker image repository name and `v1.0` is tag name, you can change them to whatever you like.
### Use docker image
This docker image you just built does not contain Doris source code repo. You need
to download it first and map it to the container. (You can just use the one you
used to build this image before)
```console
$ docker run -it -v /your/local/path/doris/:/root/doris/ doris:v1.0
$ docker run -it -v /your/local/.m2:/root/.m2 -v /your/local/doris-DORIS-x.x.x-release/:/root/doris-DORIS-x.x.x-release/ doris:v1.0
```
Then you can build source code inside the container.
```console
$ cd /root/doris/
$ sh build.sh
```
**NOTICE**
The default JDK version is openjdk 11, if you want to use openjdk 8, you can run the command:
```console
$ alternatives --set java java-1.8.0-openjdk.x86_64
$ alternatives --set javac java-1.8.0-openjdk.x86_64
$ export JAVA_HOME=/usr/lib/jvm/java-1.8.0
```
The version of jdk you used to run FE must be the same version you used to compile FE.
### Latest update time
2022-1-23