2015-07-31 14:22:50 -04:00
|
|
|
<!---
|
|
|
|
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.
|
|
|
|
-->
|
|
|
|
|
2014-09-05 20:36:18 -04:00
|
|
|
# hbase_docker
|
|
|
|
|
|
|
|
## Overview
|
|
|
|
|
|
|
|
The Dockerfile in this folder can be used to build a Docker image running
|
|
|
|
the latest HBase master branch in standalone mode. It does this by setting
|
|
|
|
up necessary dependencies, checking out the master branch of HBase from
|
|
|
|
GitHub, and then building HBase. By default, this image will start the HMaster
|
|
|
|
and launch the HBase shell when run.
|
|
|
|
|
|
|
|
## Usage
|
|
|
|
|
|
|
|
1. Download x64 .tar.gz files of the Oracle JDK and Apache Maven and place them
|
|
|
|
in this folder (i.e. both tarballs must be in the same folder as the
|
|
|
|
Dockerfile). Also note that the Dockerfile will properly pick up the tarballs
|
|
|
|
as long as the JDK file has "jdk" in its name and the Maven file contains
|
|
|
|
"maven". As an example, while developing this Dockerfile, my working directory
|
|
|
|
looked like this:
|
|
|
|
|
|
|
|
```
|
|
|
|
$ ls -lh
|
|
|
|
total 145848
|
|
|
|
-rw-r--r-- 1 root root 6956162 Sep 3 15:48 apache-maven-3.2.3-bin.tar.gz
|
|
|
|
-rw-r--r-- 1 root root 2072 Sep 3 15:48 Dockerfile
|
|
|
|
-rw-r--r-- 1 root root 142376665 Sep 3 15:48 jdk-7u67-linux-x64.tar.gz
|
|
|
|
-rw-r--r-- 1 root root 1844 Sep 3 15:56 README.md
|
|
|
|
```
|
|
|
|
2. Ensure that you have a recent version of Docker installed from
|
|
|
|
[docker.io](http://www.docker.io).
|
|
|
|
3. Set this folder as your working directory.
|
|
|
|
4. Type `docker build -t hbase_docker .` to build a Docker image called **hbase_docker**.
|
|
|
|
This may take 10 minutes or more the first time you run the command since it will
|
|
|
|
create a Maven repository inside the image as well as checkout the master branch
|
|
|
|
of HBase.
|
|
|
|
5. When this completes successfully, you can run `docker run -it hbase_docker`
|
|
|
|
to access an HBase shell running inside of a container created from the
|
|
|
|
**hbase_docker** image. Alternatively, you can type `docker run -it hbase_docker
|
|
|
|
bash` to start a container without a running HMaster. Within this environment,
|
|
|
|
HBase is built in /root/hbase-bin.
|