> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/open-source/use-harness-open-source/pipelines-1/samples/redis.md).

# Redis

This guide covers configuring continuous integration pipelines for projects that have a Redis dependency.

## Basic Example <a href="#basic-example" id="basic-example"></a>

In the below example we demonstrate a pipeline that launches Redis as a background step. The database server will be available at `redis:6379`, where the hostname matches the background step name.

```yaml
kind: pipeline
spec:
  stages:
  - type: ci
    spec:
      steps:
      - name: redis
        type: background
        spec:
          container: redis

      - name: test
        type: run
        spec:
          container: redis
          script: |-
            sleep 5
            redis-cli -h redis ping
            redis-cli -h redis set FOO bar
            redis-cli -h redis get FOO
```

## Common Problems <a href="#common-problems" id="common-problems"></a>

### Initialization <a href="#initialization" id="initialization"></a>

If you are unable to connect to the Redis container please make sure you are giving Redis adequate time to initialize and begin accepting connections.

```yaml
      - name: test
        type: run
        spec:
          container: redis
          script: |-
            sleep 5
            redis-cli -h redis ping
```

### Incorrect Hostname <a href="#incorrect-hostname" id="incorrect-hostname"></a>

You cannot use `127.0.0.1` or `localhost` to connect with the Redis container. If you are unable to connect to the Redis container please verify you are using the correct hostname, corresponding with the name of the redis service container.

Bad:

```yaml
      - name: test
        type: run
        spec:
          container: redis
          script: |-
            sleep 5
            redis-cli -h localhost ping
```

Good:

```yaml
      - name: test
        type: run
        spec:
          container: redis
          script: |-
            sleep 5
            redis-cli -h redis ping
```
