Skip to content

Commit

Permalink
#1 add dockerfile and build
Browse files Browse the repository at this point in the history
  • Loading branch information
obriensystems committed Feb 20, 2020
1 parent 69d8ead commit ed98d1f
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 10 deletions.
12 changes: 12 additions & 0 deletions reference-nbi/src/docker/DockerFile
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#FROM anapsix/alpine-java:jre8
FROM openjdk:8

ARG USERVICE_HOME=/opt/app/

# Build up the deployment folder structure
RUN mkdir -p $USERVICE_HOME

ADD reference-nbi-*.jar $USERVICE_HOME/lib/reference-nbi.jar
ADD startService.sh $USERVICE_HOME/bin/

CMD ["/opt/app/bin/startService.sh"]
35 changes: 35 additions & 0 deletions reference-nbi/src/docker/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#!/bin/bash
# http://wiki.obrienlabs.cloud/display/DEV/AWS+ECR+E2E+Architecture
# source from http://jira.obrienlabs.cloud/browse/ECS-1
# https://github.com/obrienlabs/refarch
# Michael O'Brien

BUILD_ID=10001
BUILD_DIR=builds
mkdir ../../$BUILD_DIR
TARGET_DIR=../../$BUILD_DIR/$BUILD_ID
mkdir $TARGET_DIR
CONTAINER_IMAGE=reference-nbi

cp ../../target/*.jar $TARGET_DIR
cp DockerFile $TARGET_DIR
cp startService.sh $TARGET_DIR
cd $TARGET_DIR
docker build --no-cache --build-arg build-id=$BUILD_ID -t obrienlabs/$CONTAINER_IMAGE -f DockerFile .
#docker tag $CONTAINER_IMAGE:latest $CONTAINER_IMAGE:latest
docker tag obrienlabs/$CONTAINER_IMAGE obrienlabs/$CONTAINER_IMAGE:0.0.1
# dockerhub
docker push obrienlabs/$CONTAINER_IMAGE:0.0.1
# locally
docker stop $CONTAINER_IMAGE
docker rm $CONTAINER_IMAGE
echo "starting: $CONTAINER_IMAGE"
docker run --name $CONTAINER_IMAGE \
-d -p 8888:8080 \
-e os.environment.configuration.dir=/ \
-e os.environment.ecosystem=sbx \
obrienlabs/$CONTAINER_IMAGE:0.0.1


cd ../../src/docker

8 changes: 8 additions & 0 deletions reference-nbi/src/docker/startService.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/bash
cd /opt/app
#-Dlogging.config=config/logback.xml
if [ -z "${java_runtime_arguments}" ]; then
java -Xms128m -Xmx1536m -jar /opt/app/lib/reference-nbi.jar
else
java $java_runtime_arguments -jar /opt/app/lib/reference-nbi.jar
fi
Original file line number Diff line number Diff line change
Expand Up @@ -53,18 +53,22 @@ public class ApiController {
}

/**
* MapReduce: split a string on & into a list and then each entry on the = delimiter into a map
* execution=e1s1&action=test = ZXhlY3V0aW9uPWUxczEmYWN0aW9uPXRlc3Q=
*/
private Map<Object, Object> parseParameters(String decoded) {
// split on & delimiter
List<String> kvPairs = Stream.of(decoded.split("&"))
Map<Object, Object> map = null;
if(null != decoded && decoded.length() > 0) {
map = Stream.of(decoded
.split("&"))
.map(elem -> new String(elem))
.collect(Collectors.toList());
// split on = delimiter
Map<Object, Object> map = kvPairs.stream().map(s -> s.split("=")).collect(
Collectors.toMap(a -> a[0], a -> a[1]));
map.entrySet().stream().forEach(
e -> LOG.info("Attribute: " + e.getKey() + "=" + e.getValue()));
.collect(Collectors.toList())
.stream()
.map(s -> s.split("="))
.collect(Collectors.toMap(a -> a[0], a -> a[1]));
map.entrySet().stream()
.forEach(e -> LOG.info("Attribute: " + e.getKey() + "=" + e.getValue()));
}
return map;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,11 @@ private String encode(String url) {
}

private String decode(String url) {
byte[] decodedBytes = Base64.getUrlDecoder().decode(url);
return new String(decodedBytes);
if(null != url) {
byte[] decodedBytes = Base64.getUrlDecoder().decode(url);
return new String(decodedBytes);
} else {
return "";
}
}
}

0 comments on commit ed98d1f

Please sign in to comment.