From d3189d55206417557b03fde732693aaffca54cf8 Mon Sep 17 00:00:00 2001
From: startxfr <clarue@startx.fr>
Date: Sun, 29 Nov 2015 23:52:56 +0100
Subject: bugfix for mongo service and reshapping of ooconv

---
 Services/mariadb/Dockerfile        |  1 -
 Services/memcache/Dockerfile       |  1 +
 Services/mongo/Dockerfile          |  5 +--
 Services/mongo/mongodb.conf        | 24 ---------------
 Services/mongo/run.sh              |  5 ++-
 Services/ooconv/Dockerfile         | 21 +++++++------
 Services/ooconv/docker-compose.yml | 14 +++++++++
 Services/ooconv/run.sh             | 63 ++++++++++++++++++++++++++++++++++++++
 Services/ooconv/sx/ooconv.sh       | 40 ------------------------
 Services/ooconv/sx/ooconv_run.sh   |  7 -----
 docker-compose.yml                 | 25 +++++++--------
 11 files changed, 105 insertions(+), 101 deletions(-)
 delete mode 100644 Services/mongo/mongodb.conf
 create mode 100644 Services/ooconv/docker-compose.yml
 create mode 100644 Services/ooconv/run.sh
 delete mode 100644 Services/ooconv/sx/ooconv.sh
 delete mode 100644 Services/ooconv/sx/ooconv_run.sh

diff --git a/Services/mariadb/Dockerfile b/Services/mariadb/Dockerfile
index 9679969..0e6c67f 100644
--- a/Services/mariadb/Dockerfile
+++ b/Services/mariadb/Dockerfile
@@ -23,5 +23,4 @@ RUN chmod 775 /bin/run.sh && \
 
 EXPOSE 3306
 VOLUME [$DATA_PATH,$LOG_PATH]
-
 CMD ["/bin/run.sh"]
\ No newline at end of file
diff --git a/Services/memcache/Dockerfile b/Services/memcache/Dockerfile
index 9b2b948..32724b2 100644
--- a/Services/memcache/Dockerfile
+++ b/Services/memcache/Dockerfile
@@ -12,4 +12,5 @@ RUN chmod 775 /bin/run.sh && \
     touch $STARTUPLOG
 
 EXPOSE 11211
+VOLUME [$LOG_PATH]
 CMD ["/bin/run.sh"]
\ No newline at end of file
diff --git a/Services/mongo/Dockerfile b/Services/mongo/Dockerfile
index f240622..98ec5f8 100644
--- a/Services/mongo/Dockerfile
+++ b/Services/mongo/Dockerfile
@@ -4,14 +4,11 @@ MAINTAINER Christophe LARUE <dev@startx.fr>
 USER root
 RUN dnf -y install mongodb mongodb-server libmongo-client rsyslog-mongodb  && \
     dnf clean all 
-ENV MONGOCONF=/etc/mongodb.conf \
-    STARTUPLOG=/data/logs/mongodb/startup.log \
+ENV STARTUPLOG=/data/logs/mongodb/startup.log \
     LOG_PATH=/data/logs/mongodb  \
     DATA_PATH=/data/mongodb
-COPY mongodb.conf $MONGOCONF
 COPY *.sh /bin/
 RUN chmod 775 /bin/run.sh && \
-    chmod ug+r $MONGOCONF && \
     mkdir -p $DATA_PATH && \
     mkdir -p $LOG_PATH && \
     touch $STARTUPLOG
diff --git a/Services/mongo/mongodb.conf b/Services/mongo/mongodb.conf
deleted file mode 100644
index 0fe4d13..0000000
--- a/Services/mongo/mongodb.conf
+++ /dev/null
@@ -1,24 +0,0 @@
-bind_ip = 127.0.0.1
-port = 27017
-fork = true
-pidfilepath = /var/run/mongodb/mongodb.pid
-logpath = /data/logs/mongodb/mongodb.log
-dbpath =/data/mongodb
-journal = true
-
-# Turn on/off security.  Off is currently the default
-#noauth = true
-#auth = true
-
-# Verbose logging output.
-#verbose = true
-
-# Disable the HTTP interface (Defaults to port+1000).
-#nohttpinterface = true
-
-# Accout token for Mongo monitoring server.
-#mms-token = <token>
-#mms-name = container-sv-mongo
-#mms-interval = 2
-
-# Replication Options
diff --git a/Services/mongo/run.sh b/Services/mongo/run.sh
index 195100e..60b82c8 100644
--- a/Services/mongo/run.sh
+++ b/Services/mongo/run.sh
@@ -75,9 +75,8 @@ function start_daemon {
     echo "=> Starting mongodb daemon ..." | tee -a $STARTUPLOG
     su mongodb
     display_container_started | tee -a $STARTUPLOG
-    exec /usr/bin/mongod --config $MONGOCONF --logappend --logpath $LOG_PATH \
-    --dbpath $DATA_PATH --journal --httpinterface \
-    --rest --master --storageEngine mmapv1
+    /usr/bin/mongod --logappend --logpath $LOG_PATH/mongodb.log --dbpath $DATA_PATH --journal --fork
+    exec tail -f $LOG_PATH/mongodb.log 
 }
 
 
diff --git a/Services/ooconv/Dockerfile b/Services/ooconv/Dockerfile
index f8ce949..feeed82 100644
--- a/Services/ooconv/Dockerfile
+++ b/Services/ooconv/Dockerfile
@@ -2,15 +2,16 @@ FROM startx/fedora
 MAINTAINER Christophe LARUE <dev@startx.fr>
 
 USER root
-# Install packages and set up unoconv
-RUN dnf -y install unoconv libreoffice-headless libreoffice-writer libreoffice-calc pdftk gs \
-    && dnf clean all \
-    && mkdir -p /tmp/ootmp 
-# Copy startx toolkit
-COPY sx/* /sx/
-RUN chmod ug+rx /sx/ooconv*
+RUN dnf -y install unoconv libreoffice-headless libreoffice-writer libreoffice-calc pdfmod ghostscript && \
+    dnf clean all 
+ENV STARTUPLOG=/data/logs/ooconv/startup.log \
+    LOG_PATH=/data/logs/ooconv
+COPY *.sh /bin/
+RUN chmod 775 /bin/run.sh && \
+    mkdir -p $LOG_PATH  && \
+    mkdir -p /tmp/ootmp  && \
+    touch $STARTUPLOG
 
 EXPOSE 2002
-VOLUME ["/tmp/ootmp"]
-
-CMD ["/sx/ooconv_run.sh"]
\ No newline at end of file
+VOLUME [$LOG_PATH]
+CMD ["/bin/run.sh"]
\ No newline at end of file
diff --git a/Services/ooconv/docker-compose.yml b/Services/ooconv/docker-compose.yml
new file mode 100644
index 0000000..297a045
--- /dev/null
+++ b/Services/ooconv/docker-compose.yml
@@ -0,0 +1,14 @@
+server:
+  build: ./
+#  image: sv-ooconv
+  container_name: "ooconv-server"
+  mem_limit: 2g
+  memswap_limit: 2g
+  cpu_shares: 8
+  restart: "on-failure:2"
+  environment:
+    CONTAINER_TYPE: "service"
+    CONTAINER_SERVICE: "ooconv"
+    CONTAINER_INSTANCE: "service-ooconv"
+  volumes:
+    - "/tmp/container/logs/ooconv:/data/logs/ooconv"
\ No newline at end of file
diff --git a/Services/ooconv/run.sh b/Services/ooconv/run.sh
new file mode 100644
index 0000000..5a94662
--- /dev/null
+++ b/Services/ooconv/run.sh
@@ -0,0 +1,63 @@
+#!/bin/bash
+source /bin/sx-lib.sh
+
+
+function display_container_ooconv_header {
+    echo "+====================================================="
+    echo "| Container   : $HOSTNAME"
+    echo "| OS          : $(</etc/redhat-release)"
+    echo "| Connector   : $(unoconv --version | head -1)" 
+    echo "| Engine      : $(unoconv --version | tail -1)" 
+    if [ -v CONTAINER_TYPE ]; then
+        echo "| Type        : $CONTAINER_TYPE"
+    fi
+    if [ -v CONTAINER_INSTANCE ]; then
+        echo "| Instance    : $CONTAINER_INSTANCE"
+    fi
+    if [ -v CONTAINER_SERVICE ]; then
+        echo "| Service     : $CONTAINER_SERVICE"
+    fi
+    if [ -v LOG_PATH ]; then
+        echo "| Log path    : $LOG_PATH"
+    fi
+    echo "+====================================================="
+}
+
+
+# Begin configuration before starting daemonized process
+# and start generating host keys
+function begin_config {
+    echo "=> BEGIN MEMCACHE CONFIGURATION"
+    if [[ ! -d $LOG_PATH ]]; then
+        echo "log directory $LOG_PATH not found"
+        mkdir -p $LOG_PATH;
+        echo "log directory $LOG_PATH CREATED"
+    else 
+        echo "log directory $LOG_PATH EXIST"
+    fi
+    chmod 0774 $LOG_PATH; 
+}
+
+# End configuration process just before starting daemon
+function end_config {
+    echo "=> END MEMCACHE CONFIGURATION"
+}
+
+# Start the ooconv server as a deamon and execute it inside 
+# the running shell
+function start_daemon {
+    echo "=> Starting ooconv daemon ..." | tee -a $STARTUPLOG
+    display_container_started | tee -a $STARTUPLOG
+    exec unoconv --listener
+}
+
+
+if [[ "$0" == *"run.sh" && ! $1 = "" ]];then
+    eval "$@"; 
+fi
+
+check_environment | tee -a $STARTUPLOG
+display_container_ooconv_header | tee -a $STARTUPLOG
+begin_config | tee -a $STARTUPLOG
+end_config | tee -a $STARTUPLOG
+start_daemon
diff --git a/Services/ooconv/sx/ooconv.sh b/Services/ooconv/sx/ooconv.sh
deleted file mode 100644
index b41447c..0000000
--- a/Services/ooconv/sx/ooconv.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-export TERM=dumb
-
-# Begin configuration before starting daemonized process
-# and start generating host keys
-function begin_config {
-    echo "=> Begin ooconv configuration for host $HOSTNAME"
-}
-
-# End configuration process just before starting daemon
-function end_config {
-    echo "=> End ooconv configuration ..."
-}
-
-# Start the ooconv server in background. Used to perform config
-# against the database structure such as user creation
-function start_server {
-    echo "===> Starting ooconv server ..."
-    unoconv --listener &
-    sleep 4
-}
-
-# Stop the ooconv server running in background. 
-function stop_server {
-    echo "===> Stopping ooconv server ..."
-    killall unoconv 
-    killall soffice.bin 
-}
-
-# Start the ooconv server as a deamon and execute it inside 
-# the running shell
-function start_daemon {
-    echo "=> Starting ooconv daemon ..."
-    exec unoconv --listener
-}
-
-
-if [[ "$0" == *"ooconv.sh" && ! $1 = "" ]];then
-    eval "$@"; 
-fi
\ No newline at end of file
diff --git a/Services/ooconv/sx/ooconv_run.sh b/Services/ooconv/sx/ooconv_run.sh
deleted file mode 100644
index fadc29c..0000000
--- a/Services/ooconv/sx/ooconv_run.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-source /sx/ooconv.sh
-
-begin_config
-end_config
-
-start_daemon
\ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index eb23458..d6a3e05 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -23,19 +23,20 @@ memcache:
     file: Services/memcache/docker-compose.yml
     service: server
 
-#mongo:
-#  extends:
-#    file: Services/mongo/docker-compose.yml
-#    service: server
+mongo:
+  extends:
+    file: Services/mongo/docker-compose.yml
+    service: server
     
-#nodejs:
-#  extends:
-#    file: Services/nodejs/docker-compose.yml
-#    service: server
-
-#ooconv:
-#  build: Services/ooconv/
-#  container_name: "startx-sv-ooconv"
+nodejs:
+  extends:
+    file: Services/nodejs/docker-compose.yml
+    service: server
+    
+ooconv:
+  extends:
+    file: Services/ooconv/docker-compose.yml
+    service: server
 
 #postgres:
 #  build: Services/postgres/
-- 
cgit v1.2.3