Skip to content

Add redis shell command for interactive Redis CLI access #169

Description

@dmonroy

Problem

There's no way to open an interactive redis-cli session against an app's Redis instance today. db shell provides this for the database via a dedicated utility image/task running inside the VPC; no equivalent exists for Redis.

Current workaround

apppack config get REDIS_URL retrieves the connection string, but reaching it requires VPC-level access. ps exec <service> --live can get a shell in a running app container that already has network access, but only works if that container happens to have redis-cli installed.

Proposed implementation

Mirror db shell's architecture (app/db.go's DBShellTaskInfo() -> StartInteractiveShell, cmd/db.go's dbShellCmd):

  • A small utility image bundling redis-cli
  • A registered ECS task family for it, similar to apppack-db-utils
  • New cmd/redis.go with a redisShellCmd, and a RedisShellTaskInfo()-equivalent method wired to the app's REDIS_URL config var

Repo

apppack (CLI) -- would also need a small utility image (new repo or extending an existing one) and possibly apppack-backend changes to register/support the task.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions