由于某些场景比如ci,需要在k8s中的使用docker,Docker-in-Docker(dind)镜像作为容器运行Docker服务。Deployment将创建一个Pod,并在其中运行这个容器。
请注意,这种方式在生产环境中并不推荐,因为在容器中运行Docker服务可能带来一些安全和性能方面的考虑。在正式环境中,你可能更倾向于使用Kubernetes本身提供的容器运行时,如containerd。
apiVersion: apps/v1
kind: Deployment
metadata:
name: docker-deployment
spec:
replicas: 1
selector:
matchLabels:
app: docker
template:
metadata:
labels:
app: docker
spec:
containers:
- name: docker
image: docker:dind
securityContext:
privileged: true