Skip to content

Commit 31245b2

Browse files
authored
Merge pull request #13 from OpenSalami/release/valkey-thin-image
Release/valkey thin image
2 parents 64c1a9d + 3a18d18 commit 31245b2

12 files changed

Lines changed: 800 additions & 2 deletions

File tree

.github/workflows/docker-image.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ jobs:
6868
docker buildx build --platform linux/amd64,linux/arm64 -t "$image" -t "ghcr.io/$owner/$name:latest" --push "$dir"
6969
done
7070
71+
72+
7173
- name: Manual build & push
7274
if: github.event_name == 'workflow_dispatch' && inputs.target != ''
7375
run: |

salami/valkey/8/Dockerfile

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
FROM alpine:3.22 AS builder
2+
ARG TARGETARCH
3+
ENV APP_VERSION=8.1.3
4+
5+
WORKDIR /tmp
6+
7+
# Install build dependencies
8+
RUN apk add --no-cache build-base linux-headers openssl-dev tcl git file
9+
10+
# Clone Valkey source and checkout the desired version
11+
RUN git clone --branch $APP_VERSION --depth 1 https://github.com/valkey-io/valkey.git
12+
13+
WORKDIR /tmp/valkey
14+
15+
# Build Valkey (musl will be used by default on Alpine)
16+
RUN make -j1 MALLOC=libc
17+
18+
# Optionally run tests (uncomment if you want)
19+
#RUN make test
20+
21+
# Copy binaries to /tmp/bin
22+
RUN mkdir -p /tmp/bin && cp src/valkey-server src/valkey-cli /tmp/bin/ && mkdir -p /tmp/bin/etc && \
23+
touch /tmp/bin/etc/valkey-default.conf
24+
# Verify the binaries
25+
RUN file /tmp/bin/valkey-server /tmp/bin/valkey-cli
26+
27+
FROM ghcr.io/opensalami/salamibase-thin:1.0.4
28+
29+
ENV APP_VERSION=$APP_VERSION \
30+
SALAMI_APP_NAME="valkey" \
31+
PATH="/opt/salami/mysql/bin:/opt/salami/common/bin:/opt/salami/valkey/bin:$PATH"
32+
33+
COPY --from=builder /tmp/bin/* /opt/salami/valkey/
34+
COPY rootfs/opt/salami/scripts /opt/salami/scripts
35+
RUN mkdir -p /salami /opt/salami/valkey/etc && \
36+
touch /opt/salami/valkey/etc/valkey-default.conf
37+
38+
RUN ["/bin/sh", "-c", "exec /opt/salami/scripts/valkey/postunpack.sh"]
39+
40+
EXPOSE 6379
41+
42+
#ENTRYPOINT [ "/opt/salami/scripts/valkey/entrypoint.sh" ]
43+
CMD [ "/opt/salami/scripts/valkey/run.sh" ]

salami/valkey/8/README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# OpenSalami ValKey v8 container image
2+
3+
## What is ValKey?
4+
5+
> ValKey is an open source (BSD) high-performance key/value datastore that supports a variety of workloads such as caching, message queues, and can act as a primary database. The project is backed by the Linux Foundation, ensuring it will remain open source forever.
6+
7+
8+
9+
## TLDR
10+
```console
11+
docker run --name valkey ghcr.io/opensalami/salami-valkey-8:latest
12+
13+
#or
14+
15+
podman run --name valkey ghcr.io/opensalami/salami-valkey-8:latest
16+
17+
```
18+
19+
20+
## Configuration
21+
We can configure ValKey via Environment Variables:
22+
23+
| Environment variable | Default value |
24+
|:---------------------|:--------------|
25+
| VALKEY_DISABLE_COMMANDS | (empty) |
26+
| VALKEY_DATABASE | valkey |
27+
| VALKEY_AOF_ENABLED | yes |
28+
| VALKEY_RDB_POLICY | (empty) |
29+
| VALKEY_RDB_POLICY_DISABLED | no |
30+
| VALKEY_PRIMARY_HOST | (empty) |
31+
| VALKEY_PRIMARY_PORT_NUMBER | 6379 |
32+
| VALKEY_DEFAULT_PORT_NUMBER | 6379 |
33+
| VALKEY_PORT_NUMBER | 6379 |
34+
| VALKEY_ALLOW_REMOTE_CONNECTIONS | yes |
35+
| VALKEY_REPLICATION_MODE | (empty) |
36+
| VALKEY_REPLICA_IP | (empty) |
37+
| VALKEY_REPLICA_PORT | (empty) |
38+
| VALKEY_EXTRA_FLAGS | (empty) |
39+
| ALLOW_EMPTY_PASSWORD | no |
40+
| VALKEY_PASSWORD | (empty) |
41+
| VALKEY_PRIMARY_PASSWORD | (empty) |
42+
| VALKEY_ACLFILE | (empty) |
43+
| VALKEY_IO_THREADS_DO_READS | (empty) |
44+
| VALKEY_IO_THREADS | (empty) |
45+
| VALKEY_TLS_ENABLED | no |
46+
| VALKEY_TLS_PORT_NUMBER | 6379 |
47+
| VALKEY_TLS_CERT_FILE | (empty) |
48+
| VALKEY_TLS_CA_DIR | (empty) |
49+
| VALKEY_TLS_KEY_FILE | (empty) |
50+
| VALKEY_TLS_KEY_FILE_PASS | (empty) |
51+
| VALKEY_TLS_CA_FILE | (empty) |
52+
| VALKEY_TLS_DH_PARAMS_FILE | (empty) |
53+
| VALKEY_TLS_AUTH_CLIENTS | yes |
54+
| VALKEY_SENTINEL_PRIMARY_NAME | (empty) |
55+
| VALKEY_SENTINEL_HOST | (empty) |
56+
| VALKEY_SENTINEL_PORT_NUMBER | (empty) |
57+
58+
Note: VALKEY_PORT_NUMBER defaults to VALKEY_DEFAULT_PORT_NUMBER (6379). VALKEY_TLS_PORT_NUMBER defaults to VALKEY_TLS_PORT (if set) or 6379.
59+
60+
61+

salami/valkey/8/VERSION

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.0.4-beta

0 commit comments

Comments
 (0)