summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Services/apache/Dockerfile6
-rw-r--r--Services/mariadb/Dockerfile6
-rw-r--r--Services/mariadb/docker-compose.yml1
-rw-r--r--Services/mariadb/run.sh17
-rw-r--r--Services/memcache/Dockerfile15
-rw-r--r--Services/memcache/docker-compose.yml15
-rw-r--r--Services/memcache/run.sh62
-rw-r--r--Services/memcache/sx/memcache.sh41
-rw-r--r--Services/memcache/sx/memcache_run.sh7
-rw-r--r--docker-compose.yml9
10 files changed, 98 insertions, 81 deletions
diff --git a/Services/apache/Dockerfile b/Services/apache/Dockerfile
index 4e67fd4..a15b41a 100644
--- a/Services/apache/Dockerfile
+++ b/Services/apache/Dockerfile
@@ -14,10 +14,8 @@ RUN chmod 775 /bin/run.sh /bin/sx-httpd.sh && \
chmod ug+r $HTTPDCONF && \
rm -f /etc/httpd/conf.d/autoindex.conf && \
rm -f /etc/httpd/conf.d/welcome.conf && \
- mkdir /data && \
- mkdir /data/logs && \
- mkdir $APP_PATH && \
- mkdir $LOG_PATH && \
+ mkdir -p $APP_PATH && \
+ mkdir -p $LOG_PATH && \
touch $STARTUPLOG
COPY ./ $APP_PATH
RUN rm -f $APP_PATH/Dockerfile $APP_PATH/httpd.conf $APP_PATH/run.sh $APP_PATH/sx-httpd.sh && \
diff --git a/Services/mariadb/Dockerfile b/Services/mariadb/Dockerfile
index 09a7acb..9679969 100644
--- a/Services/mariadb/Dockerfile
+++ b/Services/mariadb/Dockerfile
@@ -15,10 +15,8 @@ COPY my.cnf $MY_CONF
COPY *.sql $LOADSQL_PATH/
RUN chmod 775 /bin/run.sh && \
chmod ug+r $MY_CONF && \
- mkdir /data && \
- mkdir /data/logs && \
- mkdir $DATA_PATH && \
- mkdir $LOG_PATH && \
+ mkdir -p $DATA_PATH && \
+ mkdir -p $LOG_PATH && \
touch $STARTUPLOG && \
touch $DATA_PATH/.keep && \
chown -R mysql:mysql $LOG_PATH $DATA_PATH $LOADSQL_PATH
diff --git a/Services/mariadb/docker-compose.yml b/Services/mariadb/docker-compose.yml
index f6a1143..744b067 100644
--- a/Services/mariadb/docker-compose.yml
+++ b/Services/mariadb/docker-compose.yml
@@ -10,7 +10,6 @@ server:
CONTAINER_TYPE: "service"
CONTAINER_SERVICE: "mariadb"
CONTAINER_INSTANCE: "sx-mariadb"
- SERVER_NAME: "localhost"
MYSQL_ROOT_PASSWORD: "secretdemerde"
MYSQL_USER: "user-test"
MYSQL_PASSWORD: "pwd-test"
diff --git a/Services/mariadb/run.sh b/Services/mariadb/run.sh
index a2e4dfb..22f5f2a 100644
--- a/Services/mariadb/run.sh
+++ b/Services/mariadb/run.sh
@@ -3,22 +3,12 @@ source /bin/sx-lib.sh
function check_mariadb_environment {
check_environment
- if [ ! -v SERVER_NAME ]; then
- SERVER_NAME="localhost"
- export SERVER_NAME
- echo "! WARNING : environment var SERVER_NAME is missing..."
- echo "! WARNING : auto-assigned value : $SERVER_NAME"
- fi
- if [ ! -v DOC_ROOT ]; then
- DOC_ROOT="/data/apache"
- export DOC_ROOT
- fi
if [ ! -v APP_PATH ]; then
- APP_PATH="/data/apache"
+ APP_PATH="/data/mariadb"
export APP_PATH
fi
if [ ! -v LOG_PATH ]; then
- LOG_PATH="/data/logs/apache"
+ LOG_PATH="/data/logs/mariadb"
export LOG_PATH
fi
}
@@ -37,9 +27,6 @@ function display_container_mariadb_header {
if [ -v CONTAINER_SERVICE ]; then
echo "| Service : $CONTAINER_SERVICE"
fi
- if [ -v CONTAINER_SERVICE ]; then
- echo "| ServerName : $SERVER_NAME"
- fi
if [ -v APP_PATH ]; then
echo "| Data path : $DATA_PATH"
fi
diff --git a/Services/memcache/Dockerfile b/Services/memcache/Dockerfile
index 6bc68fe..9b2b948 100644
--- a/Services/memcache/Dockerfile
+++ b/Services/memcache/Dockerfile
@@ -1,10 +1,15 @@
FROM startx/fedora
MAINTAINER Christophe LARUE <dev@startx.fr>
-RUN dnf -y install memcached memcached-selinux && yum clean all
-COPY sx/* /sx/
-RUN chmod ug+rx /sx/memcache*
+USER root
+RUN dnf -y install memcached && \
+ dnf clean all
+ENV STARTUPLOG=/data/logs/memcache/startup.log \
+ LOG_PATH=/data/logs/memcache
+COPY *.sh /bin/
+RUN chmod 775 /bin/run.sh && \
+ mkdir -p $LOG_PATH && \
+ touch $STARTUPLOG
EXPOSE 11211
-
-CMD ["/sx/memcache_run.sh"] \ No newline at end of file
+CMD ["/bin/run.sh"] \ No newline at end of file
diff --git a/Services/memcache/docker-compose.yml b/Services/memcache/docker-compose.yml
new file mode 100644
index 0000000..792dc6c
--- /dev/null
+++ b/Services/memcache/docker-compose.yml
@@ -0,0 +1,15 @@
+server:
+ build: ./
+# image: sv-memcache
+ container_name: "memcache-server"
+ mem_limit: 1g
+ memswap_limit: 1g
+ cpu_shares: 2
+ restart: "on-failure:2"
+ environment:
+ CONTAINER_TYPE: "service"
+ CONTAINER_SERVICE: "memcache"
+ CONTAINER_INSTANCE: "service-memcache"
+ volumes:
+ - "/tmp/container/logs/memcache:/data/logs/memcache"
+ - "/tmp/container/memcache:/data/memcache" \ No newline at end of file
diff --git a/Services/memcache/run.sh b/Services/memcache/run.sh
new file mode 100644
index 0000000..bc4279e
--- /dev/null
+++ b/Services/memcache/run.sh
@@ -0,0 +1,62 @@
+#!/bin/bash
+source /bin/sx-lib.sh
+
+
+function display_container_memcache_header {
+ echo "+====================================================="
+ echo "| Container : $HOSTNAME"
+ echo "| OS : $(</etc/redhat-release)"
+ echo "| Engine : " memcached -h | head -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 memcache server as a deamon and execute it inside
+# the running shell
+function start_daemon {
+ echo "=> Starting memcache daemon ..."
+ display_container_started
+ exec memcached -u daemon -v
+}
+
+
+if [[ "$0" == *"run.sh" && ! $1 = "" ]];then
+ eval "$@";
+fi
+
+check_environment | tee -a $STARTUPLOG
+display_container_memcache_header | tee -a $STARTUPLOG
+begin_config | tee -a $STARTUPLOG
+end_config | tee -a $STARTUPLOG
+start_daemon | tee -a $STARTUPLOG
diff --git a/Services/memcache/sx/memcache.sh b/Services/memcache/sx/memcache.sh
deleted file mode 100644
index d963a29..0000000
--- a/Services/memcache/sx/memcache.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-export TERM=dumb
-
-# Begin configuration before starting daemonized process
-# and start generating host keys
-function begin_config {
- echo "=> Begin memcached configuration for host $HOSTNAME"
-}
-
-# End configuration process just before starting daemon
-function end_config {
- stop_server
- echo "=> End memcached configuration ..."
-}
-
-# Start the memcached server in background. Used to perform config
-# against the database structure such as user creation
-function start_server {
- echo "===> Starting memcached server ..."
- memcached -u daemon -d &
- sleep 8
-}
-
-# Stop the memcached server running in background.
-function stop_server {
- echo "===> Stopping memcached server ..."
- killall memcached
- sleep 8
-}
-
-# Start the memcached server as a deamon and execute it inside
-# the running shell
-function start_daemon {
- echo "=> Starting memcached daemon ..."
- exec memcached -u daemon
-}
-
-
-if [[ "$0" == *"memcached.sh" && ! $1 = "" ]];then
- eval "$@";
-fi \ No newline at end of file
diff --git a/Services/memcache/sx/memcache_run.sh b/Services/memcache/sx/memcache_run.sh
deleted file mode 100644
index 8108386..0000000
--- a/Services/memcache/sx/memcache_run.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-source /sx/memcache.sh
-
-begin_config
-end_config
-
-start_daemon \ No newline at end of file
diff --git a/docker-compose.yml b/docker-compose.yml
index 037c201..d3a9b59 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -17,10 +17,11 @@ mariadb:
extends:
file: Services/mariadb/docker-compose.yml
service: server
-
-#memcache:
-# build: Services/memcache/
-# container_name: "startx-sv-memcache"
+
+memcache:
+ extends:
+ file: Services/memcache/docker-compose.yml
+ service: server
#mongo:
# build: Services/mongo/