ftp如何部署nginx?
How to deploy nginx with ftp?
最近开始研究Kubernetes。现在我知道如何使用默认选项在 pod 中部署 nginx,并且我知道如何使用自定义 nginx.conf 和 configmap 部署 nginx。现在我有一个问题,是否要将 nginx 与 ftp 一起使用。 Ftp 需要访问 nginx.conf 所在的目录。有可能的 ?
也许有人知道简单的例子?
您可以将 ftp 容器作为 nginx
主容器的 sidecar,并在容器之间共享卷:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
labels:
app: nginx
spec:
selector:
matchLabels:
app: nginx
replicas: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: <your nginx image>
ports:
- name: http
containerPort: 80
volumeMounts:
- name: config
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
- name: ftp
image: <your ftp image>
ports:
- name: ftp
containerPort: 21
volumeMounts:
- name: config
readOnly: true
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
volumes:
- name: config
configMap:
name: nginx-config
并且该服务公开了两个端口
---
apiVersion: v1
kind: Service
metadata:
name: nginx-ftp
spec:
selector:
app: nginx
ports:
- name: http
port: 80
targetPort: 80
- name: ftp
port: 21
targetPort: 21
最近开始研究Kubernetes。现在我知道如何使用默认选项在 pod 中部署 nginx,并且我知道如何使用自定义 nginx.conf 和 configmap 部署 nginx。现在我有一个问题,是否要将 nginx 与 ftp 一起使用。 Ftp 需要访问 nginx.conf 所在的目录。有可能的 ? 也许有人知道简单的例子?
您可以将 ftp 容器作为 nginx
主容器的 sidecar,并在容器之间共享卷:
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
labels:
app: nginx
spec:
selector:
matchLabels:
app: nginx
replicas: 1
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: <your nginx image>
ports:
- name: http
containerPort: 80
volumeMounts:
- name: config
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
- name: ftp
image: <your ftp image>
ports:
- name: ftp
containerPort: 21
volumeMounts:
- name: config
readOnly: true
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
volumes:
- name: config
configMap:
name: nginx-config
并且该服务公开了两个端口
---
apiVersion: v1
kind: Service
metadata:
name: nginx-ftp
spec:
selector:
app: nginx
ports:
- name: http
port: 80
targetPort: 80
- name: ftp
port: 21
targetPort: 21