Note that variable expansion in --from and FROM was working oddly, see: https://github.com/docker/cli/issues/3356#issuecomment-957892224 for context.
Clear Linux* OS redis container image
What is this image?
clearlinux/redis is a Docker image with redis running on top of the
official clearlinux base image.
Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams.
For other Clear Linux* OS based container images, see: https://hub.docker.com/u/clearlinux
Why use a clearlinux based image?
Clear Linux* OS is an open source, rolling release Linux distribution optimized for performance and security, from the Cloud to the Edge, designed for customization, and manageability.
Clear Linux* OS based container images use:
- Optimized libraries that are compiled with latest compiler versions and flags.
- Software packages that follow upstream source closely and update frequently.
- An aggressive security model and best practices for CVE patching.
- A multi-staged build approach to keep a reduced container image size.
- The same container syntax as the official images to make getting started easy.
To learn more about Clear Linux* OS, visit: https://clearlinux.org.
Deployment:
Deploy with Docker
The easiest way to get started with this image is by simply pulling it from Docker Hub.
*Note: This container uses the same syntax as the official redis image.
-
Pull the image from Docker Hub:
docker pull clearlinux/redis -
Start a container using the examples below:
docker run --name some-redis --network some-network -d clearlinux/redis redis-server --protected-mode no -
connecting via redis-cli
docker run -it --network some-network --rm clearlinux/redis redis-cli -h some-redis
Deploy with Kubernetes
This image can also be deployed on a Kubernetes cluster, such as minikube.The following example YAML files are provided in the repository as reference for Kubernetes deployment:
redis-deployment.yaml: example using default configuration to create a basic redis service.redis-deployment-conf.yaml: example using your own custom configuration to create a redis service.
Steps to deploy redis on a Kubernetes cluster:
-
If you want to deploy
redis-deployment.yamlkubectl create -f redis-deployment.yamlOr if you want to deploy
redis-deployment-conf.yamlkubectl create -f redis-deployment-conf.yaml -
Install redis bundle and connect to the service, where 30001 is the port number defined in your service.
swupd bundle-add redis-native redis-cli -h <nodeIP> -p 30001
Build and modify:
The Dockerfiles for all Clear Linux* OS based container images are available at https://github.com/clearlinux/dockerfiles. These can be used to build and modify the container images.
-
Clone the clearlinux/dockerfiles repository.
git clone https://github.com/clearlinux/dockerfiles.git -
Change to the directory of the application:
cd redis/ -
Build the container image:
docker build -t clearlinux/redis .Refer to the Docker documentation for default build arguments. Additionally:
swupd_args- specifies arguments to pass to the Clear Linux* OS software manager. See the swupd man pages for more information.
Licenses
All licenses for the Clear Linux* Project and distributed software can be found at https://clearlinux.org/terms-and-policies