我想在中为我的redis容器启用密码 minikube
. 所以,我启用了 requirepass
在 redis.conf
. 然后,我用这个配置文件生成docker映像 Dockerfile
.
FROM redis
COPY --chown=redis:redis redis.conf /usr/local/etc/redis/redis.conf
CMD ["redis-server", "/usr/local/etc/redis/redis.conf"]
然后,我使用下面的命令启动一个带有这个图像的pod Deployment
亚马尔。
kind: Deployment
apiVersion: apps/v1
metadata:
name: cache
labels:
run: cache
spec:
replicas: 1
selector:
matchLabels:
run: cache
template:
metadata:
labels:
run: cache
spec:
containers:
- name: cache
image: redis
envFrom:
- configMapRef:
name: redis-cfgmap
resources:
limits:
memory: "256Mi"
cpu: "200m"
imagePullPolicy: Never
restartPolicy: Always
terminationGracePeriodSeconds: 30
注意,我正在做一个 docker build -t redis:latest
从一个空壳里跑出来 eval $(minikube docker-env)
. 也, imagePullPolicy
设置为 Never
以便从本地dokcer注册表中提取图像。
虽然pod确实出现了,但是日志中提到,没有使用指定的配置文件。
6:C 27 Feb 2020 04:06:08.568 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
6:C 27 Feb 2020 04:06:08.568 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=6, just started
6:C 27 Feb 2020 04:06:08.568 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
6:M 27 Feb 2020 04:06:08.570 * Running mode=standalone, port=6379.
6:M 27 Feb 2020 04:06:08.570 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
6:M 27 Feb 2020 04:06:08.570 # Server initialized
6:M 27 Feb 2020 04:06:08.571 * Ready to accept connections
少了什么?
1条答案
按热度按时间ma8fv8wu1#
再多解释一下谁想看。
似乎出于某种原因,您正在构建的图像(而不是它应该覆盖的现有图像)没有这样做,并且您被困在
redis:latest
官方形象,不是你刚塑造的形象。当处理这个问题,并试图建立形象,我有同样的问题,你和设法解决它运行
docker system prune
但在那之后,我再也没能复制一次,所以我很难说真正的原因是什么。不管怎样,我很高兴它为你工作。