diff --git a/Dockerfile b/Dockerfile index cd50935..ebc6339 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM thallian/confd-env:latest RUN addgroup syncer RUN adduser -h /app -D -G syncer syncer -RUN apk --no-cache add tar make git openssl perl gcc musl-dev pcre pcre-dev openssl-dev lua lua-dev unzip curl +RUN apk --no-cache add tar redis make git openssl perl gcc musl-dev pcre pcre-dev openssl-dev lua lua-dev unzip curl RUN apk --no-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted add luarocks5.1 WORKDIR /app @@ -37,3 +37,4 @@ RUN ln -s /usr/share/lua/ /usr/local/share/lua RUN apk del tar make git gcc musl-dev pcre-dev openssl-dev lua-dev EXPOSE 7200 +VOLUME /var/lib/redis/ diff --git a/rootfs/etc/confd/conf.d/redis.conf.toml b/rootfs/etc/confd/conf.d/redis.conf.toml deleted file mode 100644 index 71b71e6..0000000 --- a/rootfs/etc/confd/conf.d/redis.conf.toml +++ /dev/null @@ -1,3 +0,0 @@ -[template] -src = "redis.conf.tmpl" -dest = "/etc/redis.conf" \ No newline at end of file diff --git a/rootfs/etc/confd/conf.d/redis.lua.toml b/rootfs/etc/confd/conf.d/redis.lua.toml deleted file mode 100644 index 4abfe6d..0000000 --- a/rootfs/etc/confd/conf.d/redis.lua.toml +++ /dev/null @@ -1,5 +0,0 @@ -[template] -src = "redis.lua.tmpl" -dest = "/app/server/db/redis.lua" -uid = 1000 -gid = 1000 \ No newline at end of file diff --git a/rootfs/etc/confd/templates/redis.conf.tmpl b/rootfs/etc/confd/templates/redis.conf.tmpl deleted file mode 100644 index 3f11d3e..0000000 --- a/rootfs/etc/confd/templates/redis.conf.tmpl +++ /dev/null @@ -1,49 +0,0 @@ -{{if (getenv "REDIS_BIND")}} -bind {{getenv "REDIS_BIND"}} -{{end}} -protected-mode no -port 6379 -tcp-backlog 511 -timeout 0 -tcp-keepalive 0 -daemonize no -supervised no -loglevel notice -logfile '' -databases 16 -save 900 1 -save 300 10 -save 60 10000 -stop-writes-on-bgsave-error yes -rdbcompression yes -rdbchecksum yes -dbfilename dump.rdb -dir /var/lib/redis/ -{{if (getenv "REDIS_PASSWORD")}} -requirepass {{getenv "REDIS_PASSWORD"}} -{{end}} -appendonly no -appendfsync everysec -no-appendfsync-on-rewrite no -auto-aof-rewrite-percentage 100 -auto-aof-rewrite-min-size 64mb -aof-load-truncated yes -lua-time-limit 5000 -slowlog-log-slower-than 10000 -slowlog-max-len 128 -latency-monitor-threshold 0 -notify-keyspace-events "" -hash-max-ziplist-entries 512 -hash-max-ziplist-value 64 -list-max-ziplist-size -2 -list-compress-depth 0 -set-max-intset-entries 512 -zset-max-ziplist-entries 128 -zset-max-ziplist-value 64 -hll-sparse-max-bytes 3000 -activerehashing yes -client-output-buffer-limit normal 0 0 0 -client-output-buffer-limit slave 256mb 64mb 60 -client-output-buffer-limit pubsub 32mb 8mb 60 -hz 10 -aof-rewrite-incremental-fsync yes diff --git a/rootfs/etc/confd/templates/redis.lua.tmpl b/rootfs/etc/confd/templates/redis.lua.tmpl deleted file mode 100644 index 48debbb..0000000 --- a/rootfs/etc/confd/templates/redis.lua.tmpl +++ /dev/null @@ -1,44 +0,0 @@ -local Gin = require 'gin.core.gin' - --- First, specify the environment settings for this database, for instance: -local DbSettings = { - development = { - host = "127.0.0.1", - port = 6379, - database = 1, - pool = 5 - }, - - test = { - host = "127.0.0.1", - port = 6379, - database = 2, - pool = 5 - }, - - production = { - host = "{{getenv "REDIS_HOST"}}", - port = 6379, - database = 3, - pool = 5 - } -} - --- Then initialize and return your database: -local Redis = { - options = {}, -} - -function Redis:new() - local redis = require("resty.redis") - local option = DbSettings[Gin.env] - local red = redis:new() - red:set_timeout(1000) -- 1 sec - local ok, err = red:connect(option.host, option.port) - if ok then - red:select(option.database) - return red - end -end - -return Redis \ No newline at end of file diff --git a/rootfs/etc/fix-attrs.d/01-redis b/rootfs/etc/fix-attrs.d/01-redis new file mode 100644 index 0000000..3ad7eb2 --- /dev/null +++ b/rootfs/etc/fix-attrs.d/01-redis @@ -0,0 +1 @@ +/var/lib/redis/ true redis 0640 0750 \ No newline at end of file diff --git a/rootfs/etc/services.d/redis/run b/rootfs/etc/services.d/redis/run new file mode 100644 index 0000000..3fd4b99 --- /dev/null +++ b/rootfs/etc/services.d/redis/run @@ -0,0 +1,3 @@ +#!/usr/bin/with-contenv sh + +s6-setuidgid redis redis-server /etc/redis.conf