CVAT Installation on Kubernetes

10/21/2019

Using v0.5.1 from the GitHub repo (https://github.com/opencv/cvat), I've pulled it down locally, built and tagged it, and pushed it up to a local docker registry.

When I try to deploy it on a kubernetes instance from the registry I get the following error in the pod logs:

Error: Format string '%(ENV_HOME)s/wait-for-it.sh db:5432 -t 0 -- bash -ic \\n"/usr/bin/python3 ~/manage.py migrate && \\n/usr/bin/python3 ~/manage.py collectstatic --no-input && \\nexec /usr/bin/python3 $HOME/manage.py runmodwsgi --log-to-terminal --port 8080 \\n--limit-request-body 1073741824 --log-level INFO --include-file ~/mod_wsgi.conf \\n%(ENV_DJANGO_MODWSGI_EXTRA_ARGS)s --locale %(ENV_LC_ALL)s"' for 'program:runserver.command' contains names ('ENV_DJANGO_MODWSGI_EXTRA_ARGS') which cannot be expanded. Available names: ENV_CUDA_SUPPORT, ENV_CVAT_PORT, ENV_CVAT_PORT_8080_TCP, ENV_CVAT_PORT_8080_TCP_ADDR, ENV_CVAT_PORT_8080_TCP_PORT, ENV_CVAT_PORT_8080_TCP_PROTO, ENV_CVAT_PORT_8443_TCP, ENV_CVAT_PORT_8443_TCP_ADDR, ENV_CVAT_PORT_8443_TCP_PORT, ENV_CVAT_PORT_8443_TCP_PROTO, ENV_CVAT_SERVICE_HOST, ENV_CVAT_SERVICE_PORT, ENV_CVAT_SERVICE_PORT_8080_TCP, ENV_CVAT_SERVICE_PORT_8443_TCP, ENV_DB2_PORT, ENV_DB2_PORT_50000_TCP, ENV_DB2_PORT_50000_TCP_ADDR, ENV_DB2_PORT_50000_TCP_PORT, ENV_DB2_PORT_50000_TCP_PROTO, ENV_DB2_PORT_55000_TCP, ENV_DB2_PORT_55000_TCP_ADDR, ENV_DB2_PORT_55000_TCP_PORT, ENV_DB2_PORT_55000_TCP_PROTO, ENV_DB2_PORT_60006_TCP, ENV_DB2_PORT_60006_TCP_ADDR, ENV_DB2_PORT_60006_TCP_PORT, ENV_DB2_PORT_60006_TCP_PROTO, ENV_DB2_PORT_60007_TCP, ENV_DB2_PORT_60007_TCP_ADDR, ENV_DB2_PORT_60007_TCP_PORT, ENV_DB2_PORT_60007_TCP_PROTO, ENV_DB2_SERVICE_HOST, ENV_DB2_SERVICE_PORT, ENV_DB2_SERVICE_PORT_50000_TCP, ENV_DB2_SERVICE_PORT_55000_TCP, ENV_DB2_SERVICE_PORT_60006_TCP, ENV_DB2_SERVICE_PORT_60007_TCP, ENV_DEXTR_MODEL_DIR, ENV_DJANGO_CONFIGURATION, ENV_HOME, ENV_HOSTNAME, ENV_KUBERNETES_PORT, ENV_KUBERNETES_PORT_443_TCP, ENV_KUBERNETES_PORT_443_TCP_ADDR, ENV_KUBERNETES_PORT_443_TCP_PORT, ENV_KUBERNETES_PORT_443_TCP_PROTO, ENV_KUBERNETES_PORT_53_TCP, ENV_KUBERNETES_PORT_53_TCP_ADDR, ENV_KUBERNETES_PORT_53_TCP_PORT, ENV_KUBERNETES_PORT_53_TCP_PROTO, ENV_KUBERNETES_PORT_53_UDP, ENV_KUBERNETES_PORT_53_UDP_ADDR, ENV_KUBERNETES_PORT_53_UDP_PORT, ENV_KUBERNETES_PORT_53_UDP_PROTO, ENV_KUBERNETES_SERVICE_HOST, ENV_KUBERNETES_SERVICE_PORT, ENV_KUBERNETES_SERVICE_PORT_DNS, ENV_KUBERNETES_SERVICE_PORT_DNS_TCP, ENV_KUBERNETES_SERVICE_PORT_HTTPS, ENV_LANG, ENV_LC_ALL, ENV_NGINX_REVERSEPROXY_PORT, ENV_NGINX_REVERSEPROXY_PORT_8080_TCP, ENV_NGINX_REVERSEPROXY_PORT_8080_TCP_ADDR, ENV_NGINX_REVERSEPROXY_PORT_8080_TCP_PORT, ENV_NGINX_REVERSEPROXY_PORT_8080_TCP_PROTO, ENV_NGINX_REVERSEPROXY_PORT_8443_TCP, ENV_NGINX_REVERSEPROXY_PORT_8443_TCP_ADDR, ENV_NGINX_REVERSEPROXY_PORT_8443_TCP_PORT, ENV_NGINX_REVERSEPROXY_PORT_8443_TCP_PROTO, ENV_NGINX_REVERSEPROXY_SERVICE_HOST, ENV_NGINX_REVERSEPROXY_SERVICE_PORT, ENV_NGINX_REVERSEPROXY_SERVICE_PORT_8080_TCP, ENV_NGINX_REVERSEPROXY_SERVICE_PORT_8443_TCP, ENV_OPENVINO_TOOLKIT, ENV_PATH, ENV_REID_MODEL_DIR, ENV_TERM, ENV_TEST_UI_PORT, ENV_TEST_UI_PORT_8080_TCP, ENV_TEST_UI_PORT_8080_TCP_ADDR, ENV_TEST_UI_PORT_8080_TCP_PORT, ENV_TEST_UI_PORT_8080_TCP_PROTO, ENV_TEST_UI_SERVICE_HOST, ENV_TEST_UI_SERVICE_PORT, ENV_TEST_UI_SERVICE_PORT_8080_TCP, ENV_TF_ANNOTATION, ENV_TF_ANNOTATION_MODEL_PATH, ENV_TZ, ENV_USER, ENV_WITH_DEXTR, ENV_http_proxy, ENV_https_proxy, ENV_no_proxy, ENV_socks_proxy, group_name, here, host_node_name, process_num, program_name in section 'program:runserver' (file: 'supervisord.conf')

For help, use /usr/bin/supervisord -h

I can however run it locally with no issues.

Any insight is gratefully recieved.

-- Nicholas Courtman
django
docker
kubernetes
supervisord

1 Answer

10/24/2019

I have used kompose to convert the docker-compose into helm chart, and successfully installed cvat on kubernetes. Although having some minor issue in finding out the entry port of the cvat web.

-- Jaylin
Source: StackOverflow