🍁博客主页:
👉@不会压弯的小飞侠
✨欢迎关注:
👉
点赞
👍
收藏
⭐
留言
✒
✨系列专栏:
👉Docker学习专栏
✨学习社区:
👉不会压弯的小飞侠
✨知足上进,不负野心。
🔥
欢迎大佬指正,一起学习!一起加油!
目录
🍁通过 Dockerfile 构建
- 创建 Dockerfile
- 创建目录redis,用于存放后面的相关东西。
mkdir -p ~/redis ~/redis/data
- data目录将映射为redis容器配置的/data目录,作为redis数据持久化的存储目录
- 进入创建的redis目录,创建Dockerfile
FROM debian:jessie# add our user and group first to make sure their IDs get assigned consistently, regardless of whatever dependencies get addedRUN groupadd -r redis && useradd -r -g redis redis
RUN apt-get update &&apt-getinstall -y --no-install-recommends \
ca-certificates \wget\&&rm -rf /var/lib/apt/lists/*
# grab gosu for easy step-down from root
ENV GOSU_VERSION 1.7
RUN set -x \&&wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture)"\&&wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$(dpkg --print-architecture).asc"\&&exportGNUPGHOME="$(mktemp -d)"\&& gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4 \&& gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu \&&rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc \&&chmod +x /usr/local/bin/gosu \&& gosu nobody true
ENV REDIS_VERSION 3.2.0
ENV REDIS_DOWNLOAD_URL http://download.redis.io/releases/redis-3.2.0.tar.gz
ENV REDIS_DOWNLOAD_SHA1 0c1820931094369c8cc19fc1be62f598bc5961ca
# for redis-sentinel see: http://redis.io/topics/sentinel
RUN buildDeps='gcc libc6-dev make'\&&set -x \&&apt-get update &&apt-getinstall -y $buildDeps --no-install-recommends \&&rm -rf /var/lib/apt/lists/* \&&wget -O redis.tar.gz "$REDIS_DOWNLOAD_URL"\&&echo"$REDIS_DOWNLOAD_SHA1 *redis.tar.gz"| sha1sum -c - \&&mkdir -p /usr/src/redis \&&tar -xzf redis.tar.gz -C /usr/src/redis --strip-components=1\&&rm redis.tar.gz \&&make -C /usr/src/redis \&&make -C /usr/src/redis install\&&rm -r /usr/src/redis \&&apt-get purge -y --auto-remove $buildDeps
RUN mkdir /data &&chown redis:redis /data
VOLUME /data
WORKDIR /data
COPY docker-entrypoint.sh /usr/local/bin/
ENTRYPOINT ["docker-entrypoint.sh"]
EXPOSE 6379
CMD ["redis-server"]
- 通过Dockerfile 创建一个镜像,替换成自己的名字
docker build -t redis:3.2 .
- 创建完成后,可在本地的镜像列表中查找刚创建的镜像
docker images redis
🍁docker pull redis:3.2
- 查找Docker Hub上的redis镜像
docker search redis
- 这里拉取官方的镜像,标签为3.2
docker pull redis:3.2
- 下载完成后就可以在本地镜像列表里查到REPOSITORY为redis,标签为3.2的镜像。
🍁使用redis镜像
- 运行容器
docker run -p 6379:6379 -v $PWD/data:/data -d redis:3.2 redis-server --appendonly yes
- 命令说明: - -p 6379:6379 :将容器的6379端口映射到主机的6379端口- -v $PWD/data:/data :将主机中当前目录下的data挂载到容器的/data redis-server --appendonly yes :在容器执行redis-server启动命令,并打开redis持久化配置
- 查看容器启动情况
dockerps
- 连接、查看容器
- 使用redis镜像执行redis-cli命令连接到刚启动的容器,主机IP:
docker run -it redis:3.2 redis-cli -h IP地址:6379> info
本文转载自: https://blog.csdn.net/qq_43514330/article/details/126824455
版权归原作者 不会压弯的小飞侠 所有, 如有侵权,请联系我们删除。
版权归原作者 不会压弯的小飞侠 所有, 如有侵权,请联系我们删除。