gpt4 book ai didi

docker - Kubernetes deployment.yaml for django+gunicorn+nginx

转载 作者:行者123 更新时间:2023-12-02 12:17:04 32 4
gpt4 key购买 nike

我已经使用 docker-compose.yml 创建了 docker 镜像,如下所示

version: '2'

services:

djangoapp:
build: .
volumes:
- .:/sig_app
- static_volume:/sig_app
networks:
- nginx_network

nginx:
image: nginx:1.13
ports:
- "80:80"
volumes:
- ./config/nginx/conf.d:/etc/nginx/conf.d
- static_volume:/sig_app
depends_on:
- djangoapp
networks:
- nginx_network

networks:
nginx_network:
driver: bridge

volumes:
static_volume:

我已经使用了 docker-compose build 和 docker-compose up。三张图片创建如下

  1. kubernetes_djangoapp
  2. docker.io/python
  3. docker.io/nginx

我想使用 YAML 文件将应用程序部署到 kubernetes 中。我是 kubernetes 的新手。Django 应用程序正在使用端口 8000 运行和带有端口 80 的 Nginx

最佳答案

这应该有效:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: my-deploy
spec:
replicas: 1
template:
metadata:
labels:
app: my-app
spec:
volumes:
- name: django-nginx
emptyDir: {}
- name: nginx-host
hostPath:
path: /config/nginx/conf.d
containers:
- name: djangoapp
image: kubernetes_djangoapp
volumeMounts:
- name: django-nginx
mountPath: /sig_app
- name: nginx
image: nginx:1.13
ports:
- containerPort: 80
volumeMounts:
- name: django-nginx
mountPath: /sig_app
- name: nginx-host
mountPath: /etc/nginx/conf.d

请注意,您必须修改一些内容才能使其自定义。我想念图像的位置。您应该将其上传到 docker hub 或您选择的任何注册表。

关于卷,这里两个容器共享一个非持久卷(django-nginx),它映射每个容器中的 /sig_app 目录。另一个与您的主机 (/config/nginx/conf.d) 共享容器 nginx (etc/nginx/conf.d),以传递配置文件。更好的方法是使用 ConfigMap。检查一下。

所以,是的,为 django 设置图像,如果它不起作用请告诉我,我们会看看失败的原因。

干杯

关于docker - Kubernetes deployment.yaml for django+gunicorn+nginx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55255609/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com