Изменение Cargo
Обновите образ или переменные окружения Cargo и сразу разверните изменения.
Обновление образа Cargo
Изменим Cargo my-cargo, используя ранее скачанный образ:
nanocl cargo patch global.my-cargo --image ghcr.io/next-hat/nanocl-get-started:latestИспользуются следующие параметры:
global.my-cargo— канонический ключ изменяемого Cargo.--image— изменяемое значение, образ Cargo.ghcr.io/next-hat/nanocl-get-started:latest— имя нового образа.
Проверьте изменения просмотром Cargo:
nanocl cargo inspect global.my-cargoПорт get-started по умолчанию — 9000; проверим доступ.
При изменении Cargo IP связанного контейнера меняется.
Новый контейнер запускается до удаления старого.
curl 10.2.0.3:9000Примерный вывод:
{
"headers": {
"accept": "*/*",
"host": "10.2.0.3:9000",
"user-agent": "curl/8.2.1"
},
"envs": {
"HOME": "/",
"NANOCL_NODE_ADDR": "192.168.8.102",
"NANOCL_CARGO_KEY": "global.my-cargo",
"NANOCL_CARGO_NAMESPACE": "global",
"NANOCL_CARGO_INSTANCE": "0",
"TERM": "xterm",
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
" ": "/bin/nanocl-get-started",
"HOSTNAME": "global.my-cargo-r0-my-cargo-a1b2c3.c",
"NANOCL_NODE": "behuman"
}
}Поздравляем, вы впервые обновили образ Cargo!
Обновление окружения Cargo
Теперь Cargo использует новый образ, возвращающий переменные окружения.
Обновим некоторые из них.
Измените порт Cargo через переменную окружения PORT:
nanocl cargo patch global.my-cargo --env PORT=9001IP-адрес снова изменится, поэтому выполните:
nanocl cargo inspect global.my-cargoЧтобы получить новый IP.
Проверьте обновление переменной окружения командой:
curl 10.2.0.2:9001Вывод:
{
"headers": {
"accept": "*/*",
"host": "10.2.0.2:9001",
"user-agent": "curl/8.2.1"
},
"envs": {
"NANOCL_CARGO_INSTANCE": "0",
" ": "/bin/nanocl-get-started",
"HOSTNAME": "global.my-cargo-r0-my-cargo-d4e5f6.c",
"HOME": "/",
"NANOCL_NODE": "behuman",
"TERM": "xterm",
"NANOCL_NODE_ADDR": "192.168.8.102",
"PORT": "9001",
"PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"NANOCL_CARGO_KEY": "global.my-cargo",
"NANOCL_CARGO_NAMESPACE": "global"
}
}В этот раз используется 9001 вместо 9000, поскольку сервис использует переменную окружения PORT.