summaryrefslogtreecommitdiffstats
path: root/Services/memcache
diff options
context:
space:
mode:
authorstartxfr <clarue@startx.fr>2016-02-06 05:05:57 +0100
committerstartxfr <clarue@startx.fr>2016-02-06 05:05:57 +0100
commit5cff390c081bdfb756a8977ad0bd56d778202d6b (patch)
treece018b9be9ad054e4f7aa6891d7b4668c1ad74af /Services/memcache
parent0f3bcf30ae748a75c22a03d4655dba4d8dc71185 (diff)
downloadphpmyadmin-5cff390c081bdfb756a8977ad0bd56d778202d6b.tar.gz
phpmyadmin-5cff390c081bdfb756a8977ad0bd56d778202d6b.tar.bz2
phpmyadmin-5cff390c081bdfb756a8977ad0bd56d778202d6b.tar.xz
phpmyadmin-5cff390c081bdfb756a8977ad0bd56d778202d6b.zip
reorg avec gestion des sig
Diffstat (limited to 'Services/memcache')
-rw-r--r--Services/memcache/Dockerfile4
-rw-r--r--Services/memcache/README.md12
-rw-r--r--Services/memcache/docker-compose.yml2
-rw-r--r--Services/memcache/run.sh24
4 files changed, 24 insertions, 18 deletions
diff --git a/Services/memcache/Dockerfile b/Services/memcache/Dockerfile
index 32724b2..55ae563 100644
--- a/Services/memcache/Dockerfile
+++ b/Services/memcache/Dockerfile
@@ -4,8 +4,8 @@ MAINTAINER Christophe LARUE <dev@startx.fr>
USER root
RUN dnf -y install memcached && \
dnf clean all
-ENV STARTUPLOG=/data/logs/memcache/startup.log \
- LOG_PATH=/data/logs/memcache
+ENV STARTUPLOG=/logs/startup.log \
+ LOG_PATH=/logs
COPY *.sh /bin/
RUN chmod 775 /bin/run.sh && \
mkdir -p $LOG_PATH && \
diff --git a/Services/memcache/README.md b/Services/memcache/README.md
index 0ce3167..8f88de3 100644
--- a/Services/memcache/README.md
+++ b/Services/memcache/README.md
@@ -29,7 +29,7 @@ service:
CONTAINER_SERVICE: "memcache"
CONTAINER_INSTANCE: "service-memcache"
volumes:
- - "/tmp/container/logs/memcache:/data/logs/memcache"
+ - "/tmp/container/logs/memcache:/logs"
```
## Docker-compose in various situations
@@ -72,7 +72,7 @@ CMD ["/bin/run.sh"]
| CONTAINER_TYPE | `string` | `no` | Container family (os, service, application. could be enhanced
| CONTAINER_SERVICE | `string` | `no` | Define the type of service or application provided
| HOSTNAME | `auto` | `auto` | Container unique id automatically assigned by docker daemon at startup
-| LOG_PATH | `auto` | `auto` | default set to /data/logs/memcache and used as a volume mountpoint
+| LOG_PATH | `auto` | `auto` | default set to /logs and used as a volume mountpoint
## Exposed port
@@ -84,8 +84,8 @@ CMD ["/bin/run.sh"]
| Container directory | Description |
|----------------------|--------------------------------------------------------------------------|
-| /data/logs/memcache | log directory used to record container and memcache logs
-| /data/memcache | data directory served by memcache. If empty will be filled with app on startup. In other case use content from mountpoint or data volumes
+| /logs | log directory used to record container and memcache logs
+| /data | data directory served by memcache. If empty will be filled with app on startup. In other case use content from mountpoint or data volumes
## Testing the service
@@ -106,8 +106,8 @@ You must have a working environment with the source code of this repository. Rea
1. Jump into the container directory with `cd Services/memcache`
2. Build the container using `docker build -t sv-memcache .`
3. Run this container
- 1. Interactively with `docker run -p 11211:11211 -v /data/logs/memcache -it sv-memcache`. If you add a second parameter (like `/bin/bash`) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex: `/bin/bash`, `/bin/ps -a`, `/bin/df -h`,...)
- 2. As a daemon with `docker run -p 11211:11211 -v /data/logs/memcache -d sv-memcache`
+ 1. Interactively with `docker run -p 11211:11211 -v /logs -it sv-memcache`. If you add a second parameter (like `/bin/bash`) to will run this command instead of the default entrypoint. Usefull to interact with this container (ex: `/bin/bash`, `/bin/ps -a`, `/bin/df -h`,...)
+ 2. As a daemon with `docker run -p 11211:11211 -v /logs -d sv-memcache`
### Build & run a container using `docker-compose`
diff --git a/Services/memcache/docker-compose.yml b/Services/memcache/docker-compose.yml
index 8368855..ae39b41 100644
--- a/Services/memcache/docker-compose.yml
+++ b/Services/memcache/docker-compose.yml
@@ -12,4 +12,4 @@ server:
CONTAINER_SERVICE: "memcache"
CONTAINER_INSTANCE: "service-memcache"
volumes:
- - "/tmp/container/logs/memcache:/data/logs/memcache" \ No newline at end of file
+ - "/tmp/container/logs/memcache:/logs" \ No newline at end of file
diff --git a/Services/memcache/run.sh b/Services/memcache/run.sh
index 77ef648..3c5a8cd 100644
--- a/Services/memcache/run.sh
+++ b/Services/memcache/run.sh
@@ -42,21 +42,27 @@ function end_config {
echo "=> END MEMCACHE CONFIGURATION"
}
+function stop_memcache_handler {
+ killall memcached
+ echo "+=====================================================" | tee -a $STARTUPLOG
+ echo "| Container $HOSTNAME is now STOPPED" | tee -a $STARTUPLOG
+ echo "+=====================================================" | tee -a $STARTUPLOG
+ exit 143; # 128 + 15 -- SIGTERM
+}
+
+
# Start the memcache server as a deamon and execute it inside
# the running shell
-function start_daemon {
- echo "=> Starting memcache daemon ..." | tee -a $STARTUPLOG
- display_container_started | tee -a $STARTUPLOG
+function start_service_memcache {
+ trap 'kill ${!}; stop_memcache_handler' SIGHUP SIGINT SIGQUIT SIGTERM SIGKILL SIGSTOP SIGCONT
+ echo "+=====================================================" | tee -a $STARTUPLOG
+ echo "| Container $HOSTNAME is now RUNNING" | tee -a $STARTUPLOG
+ echo "+=====================================================" | tee -a $STARTUPLOG
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
+start_service_memcache