diff --git a/nomad_jobs/services/redis/readme.md b/nomad_jobs/services/redis/readme.md
new file mode 100644
index 0000000..f15e8cd
--- /dev/null
+++ b/nomad_jobs/services/redis/readme.md
@@ -0,0 +1,7 @@
+# Redis
+Redis is a Remote Dictionary Server (that's where Redis get's its name) that is open source and widely used. This is a single instance of in-memory storage for use primarily as a caching layer for other services where data does not need to be persisted. This is not a highly available or fault tolerant setup. If high availability, data persistance, or scalability is a requirement for you, consider a cloud provider like [upstash](https://upstash.com/) or a more robust setup.
+
+## Nomad Job for Redis
+Redis requires no configuration but is only available through the service mesh. This means you will need to deploy a service that can connect to the service mesh to access redis. This is a good thing because it means you can easily deploy a redis instance for your application without having to worry about the security of the instance.
+
+If you need to use the CLI, you can access it through Nomad's exec shell. This will default to /bin/bash which does not exist on alpine linux so you will need to change it to /bin/ash. Once you are in the shell, you can run the redis-cli command to connect to the redis instance.
diff --git a/nomad_jobs/services/redis/redis-cache.nomad.hcl b/nomad_jobs/services/redis/redis-cache.nomad.hcl
new file mode 100644
index 0000000..cfa73fd
--- /dev/null
+++ b/nomad_jobs/services/redis/redis-cache.nomad.hcl
@@ -0,0 +1,37 @@
+job "redis-cache" {
+  datacenters = ["dc1"]
+
+  group "cache" {
+    count = 1
+    
+    network {
+      mode = "bridge"
+      port "redis" {
+        to = 6379
+      }
+    }
+
+    service {
+      # Make available to other services by the 'redis-cache' name
+      name = "redis-cache"
+      port = "6379"
+      tags = ["traefik.enable=false"] # Hide redis from traefik
+
+      # Make available through the consul service mesh
+      connect {
+        sidecar_service {
+          tags = ["traefik.enable=false"] # Hide redis envoy from traefik
+        }
+      }
+    }
+
+    task "redis" {
+      driver = "docker"
+
+      config {
+        image = "redis:7.2.3-alpine"
+        ports = ["redis"]
+      }
+    }
+  }
+}
\ No newline at end of file