Рейтинг:0

SSH во вновь развернутый контейнер на GCP Compute Engine.

флаг de

Я хочу просто подключиться по SSH к контейнеру, развернутому на GCP Compute Engine, без лишних хлопот.

Сначала я создаю вычислительный экземпляр с контейнером:

экземпляры вычислений gcloud create-with-container имя_экземпляра --container-image gcr.io/my-container-path:latest

Затем попробуйте подключиться к нему по ssh:

gcloud вычисление ssh имя_экземпляра --container ИМЯ_КОНТЕЙНЕРА

Проблема в том, что CONTAINER_NAME неизвестен. Кажется, нет способа установить имя контейнера при создании экземпляра детерминированным образом. Итак, после создания экземпляра вам нужно запустить на нем «docker ps», чтобы определить случайное имя, прежде чем вы сможете использовать функции SSH.

Это похоже на такой стандартный шаблон использования, что я должен что-то упустить. Есть ли способ лучше?

Рейтинг:1
флаг cn

Мне неизвестна возможность именования контейнеров при создании экземпляра виртуальной машины.

В качестве решения вы можете запустить команду для отображения образов контейнеров. Эта команда будет запущена один раз, чтобы получить имя образа. Поместите его в сценарий оболочки.

gcloud вычисляет ssh $INSTANCE_NAME \
--проект $PROJECT_ID \
--zone $ZONE_NAME \
--ssh-ключ-файл $SSH_PRIVATE_KEY \
--command "докер пс"

Примечание: вы можете настроить CLI так, чтобы не требовалось указывать проект и зону, чтобы упростить команду:

Конфигурация gcloud устанавливает проект PROJECT_ID
Конфигурация gcloud устанавливает вычисление/зону ZONE_NAME

Команду можно упростить, если экземпляр использует закрытый ключ SSH по умолчанию, который ~/.ssh/google_compute_engine.

Это уменьшает команду до:

gcloud вычислить ssh $INSTANCE_NAME --command "docker ps"
Рейтинг:0
флаг cn

Одна версия команды для подключения к запущенному контейнеру:

gcloud вычислить ssh my-vm --project=мой-проект --container=$(gcloud вычислить ssh my-vm --project=мой-проект --command 'sudo docker ps --format {{.ID}}')

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.