Skip to content

Commit 9a99e6e

Browse files
Merge pull request #30 from joshrotenberg/fix/docker-public-images
refactor: simplify Docker setup with public images
2 parents dd28044 + 9bab12f commit 9a99e6e

File tree

7 files changed

+184
-552
lines changed

7 files changed

+184
-552
lines changed

.github/workflows/docker-test.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Docker Test
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
paths:
7+
- 'docker-compose.yml'
8+
- 'Dockerfile'
9+
- '.github/workflows/docker-test.yml'
10+
- 'crates/**'
11+
pull_request:
12+
paths:
13+
- 'docker-compose.yml'
14+
- 'Dockerfile'
15+
- '.github/workflows/docker-test.yml'
16+
- 'crates/**'
17+
18+
env:
19+
CARGO_TERM_COLOR: always
20+
21+
jobs:
22+
docker-test:
23+
name: Docker Compose Test
24+
runs-on: ubuntu-latest
25+
timeout-minutes: 15
26+
27+
steps:
28+
- name: Checkout code
29+
uses: actions/checkout@v4
30+
31+
- name: Set up Docker Buildx
32+
uses: docker/setup-buildx-action@v3
33+
34+
- name: Build Docker images
35+
run: docker compose build
36+
37+
- name: Run Docker Compose test cascade
38+
run: |
39+
docker compose up --abort-on-container-exit --exit-code-from test-redis
40+
EXIT_CODE=$?
41+
docker compose logs
42+
docker compose down -v
43+
exit $EXIT_CODE
44+
45+
- name: Cleanup
46+
if: always()
47+
run: docker compose down -v

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,4 @@ dump.rdb
3333

3434
# Claude
3535
.claude/
36+
CLAUDE.md

CLAUDE.md

Lines changed: 0 additions & 198 deletions
This file was deleted.

Dockerfile

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
1-
# Redis Enterprise CLI Docker Image
1+
# Redis CLI Docker Image
22
# Multi-stage build for optimal size
33

4-
FROM rust:1.82 AS builder
4+
FROM rust:1.89 AS builder
55

66
WORKDIR /build
77

88
# Copy workspace files
9-
COPY Cargo.toml Cargo.lock ./
9+
COPY Cargo.toml ./
1010
COPY crates/ ./crates/
1111

1212
# Build release binary
13-
RUN cargo build --release --bin redis-enterprise
13+
RUN cargo build --release --bin redisctl
1414

15-
# Runtime stage - minimal debian image
16-
FROM debian:bookworm-slim
15+
# Runtime stage - Ubuntu for newer GLIBC
16+
FROM ubuntu:24.04
1717

1818
# Install runtime dependencies
1919
RUN apt-get update && apt-get install -y \
@@ -22,11 +22,11 @@ RUN apt-get update && apt-get install -y \
2222
&& rm -rf /var/lib/apt/lists/*
2323

2424
# Copy binary from builder
25-
COPY --from=builder /build/target/release/redis-enterprise /usr/local/bin/redis-enterprise
25+
COPY --from=builder /build/target/release/redisctl /usr/local/bin/redisctl
2626

2727
# Create non-root user
28-
RUN useradd -m -u 1000 redis && \
29-
mkdir -p /home/redis/.config/redis-enterprise && \
28+
RUN useradd -m redis && \
29+
mkdir -p /home/redis/.config/redisctl && \
3030
chown -R redis:redis /home/redis
3131

3232
USER redis
@@ -36,6 +36,8 @@ WORKDIR /home/redis
3636
ENV REDIS_ENTERPRISE_URL=""
3737
ENV REDIS_ENTERPRISE_USER=""
3838
ENV REDIS_ENTERPRISE_PASSWORD=""
39+
ENV REDIS_CLOUD_API_KEY=""
40+
ENV REDIS_CLOUD_SECRET_KEY=""
3941

40-
ENTRYPOINT ["redis-enterprise"]
42+
ENTRYPOINT ["redisctl"]
4143
CMD ["--help"]

0 commit comments

Comments
 (0)