Kubernetes cronjob не использует переменные env
у меня естьCron job
вKubernetes
который не использует URL-адреса в переменных env для перехода к информации поиска другого API для использования в нем, возвращая ошибки, такие как использование URL-адресов appsettings/launchsettings из проекта консольного приложения.
Когда я выполнил cronjob, он вернул ошибку, например: «Отказано в соединении (20.210.70.20:80)».
Моя работа с Кроном:
`
apiVersion: batch/v1
kind: CronJob
metadata:
name: productintegration-cronjob
spec:
schedule: "0 3 * * *"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
restartPolicy: Never
containers:
- name: productintegration-cronjob
image: reconhece.azurecr.io/ms-product-integration:9399
command:
- /bin/sh
- -c
- echo dotnet - $(which dotnet);
echo Running Product Integration;
/usr/bin/dotnet /app/MsProductIntegration.dll
env:
- name: DatabaseProducts
value: "http://catalog-api:8097/api/Product/hash/{0}/{1}"
- name: DatabaseCategory
value: "http://catalog-api:8097/api/Category"
`
Мое развертывание catalogApi, куда должна идти моя работа cron:
`
apiVersion: apps/v1
kind: Deployment
metadata:
name: catalog-api-deployment
labels:
app: catalog-api
spec:
replicas: 1
selector:
matchLabels:
app: catalog-api
template:
metadata:
labels:
app: catalog-api
spec:
containers:
- name: catalog-api
image: test.azurecr.io/ms-catalog-api:6973
ports:
- containerPort: 80
env:
- name: DatabaseSettings__ConnectionString
value: "String Connection" - I removed
- name: DatabaseSettings__DatabaseName
value: "DbCatalog"
``
Миникуб работает нормально.
Как исправить эту ошибку?
Я уже изменил порт из моего catalogApi, но безуспешно.
Я попытался изменить имя переменной env, но тоже безуспешно.