Мне нужно запустить эту команду Docker в Kubernetes:
docker run -p 8080:8080 sagemath/sagemath sage -notebook
Я могу сопоставить все, кроме "-notebook" - кто-нибудь знает, как это сделать?
Вот что у меня есть до сих пор, и, конечно, это не работает, так как "-notebook" неправильно переведен в kubectl:
kubectl run --image=sagemath/sagemath sage --port=8080 --type=LoadBalancer -notebook
Maxx
29.Апрель.2022 19:54:35
2
Когда вы определяете спецификацию pod для своего sage, вы можете определить оба command
и еще args
массив, так что для вас это было бы похоже
command: sageargs:- -notebook
для запуска с kubectl run
Usage: kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [--command] -- [COMMAND] [args...] [options]
так что попробуйте работать с --
ограничитель : kubectl run --image=sagemath/sagemath --port=8080 --type=LoadBalancer -- sage -notebook
Plat0n
29.Апрель.2022 19:59:25
3
--
делает свое дело. Это означает, что kubectl не будет анализировать в качестве аргументов kubectl следующие строки, начинающиеся с -
Итак, вы запускаете этот контейнер, выполняя:
kubectl run --image=sagemath/sagemath --port=8080 sage -- -notebook
И если вам нужен общедоступный IP-адрес на GKE, вы должны предоставить доступ к контейнеру, выполняющему:
kubectl expose deploy sage --type=LoadBalancer --port=8080
Вы можете запустить общедоступный IP-адрес kubectl get service
в ряду sage
в графе ВНЕШНИЙ-IP
MaxAnt
29.Апрель.2022 20:04:22
4
command: sage notebookargs:
Для таких случаев
k run --image=sagemath/sagemath --port=8080 --command=true -- sage notebook
--command=falseесли присутствуют true и дополнительные аргументы, используйте их в качестве поля 'command' в контейнере, а не поля 'args', которое используется по умолчанию.
-notebook
- это аргумент не для docker или kubectl, а для sage
.
Да, но как мне реализовать это в kubectl - вот в чем вопрос. Приведенная выше командная строка docker действительно работает
Команда, которую вы хотите выполнить, идет в конце, как и раньше.