目录
问题复现
1.启动命令:
2.报错信息:
解决
1.排除网络问题
2.查看docker官方文档指定conf的示例
3.调整命令顺序
运行成功!
总结:docker官网没有明确写出原因,但不难推断只有先获取到镜像才能根据指定的配置文件启动,redis是如此,其他需要指定配置文件的容器也是如此
问题复现
1.启动命令:
docker run -d -it -p 6379:6379 \-v /opt/docker/redis/data:/data \-v /etc/redis/redis.conf:/etc/redis/redis.conf \redis-server /etc/redis/redis.conf \--name redis \redis
2.报错信息:
Unable to find image 'redis-server:latest' locallyTrying to pull repository docker.io/library/redis-server ... /usr/bin/docker-current: repository docker.io/redis-server not found: does not exist or no pull access.See '/usr/bin/docker-current run --help'.
解决
1.排除网络问题
- 先测试用 docker pull redis 拉取镜像能不能成功,成功则说明网络无问题
- 拉取失败则配置文件/etc/docker/daemon.json,添加阿里云镜像
vim /etc/docker/daemon.json
# 配置阿里云镜像 {"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"]}
# 重启dokcer服务systemctl restart docker
2.查看docker官方文档指定conf的示例
dokcer redis 文档链接:Docker
看这里:docker官方将 redis-server命令放到了 指定镜像 redis 的后面
# docker官网示例$ docker run \-v /myredis/conf:/usr/local/etc/redis \--name myredis \redis \redis-server /usr/local/etc/redis/redis.conf
3.调整命令顺序
docker run -d -it -p 6379:6379 \-v /opt/docker/redis/data:/data \-v /etc/redis/redis.conf:/etc/redis/redis.conf \--name redis \redis \redis-server /etc/redis/redis.conf