Mar*_*hen 20
直到最近GA发布的Compute Engine,GCE不支持运行Docker(由于内核限制),但由于新发布的部署和使用自定义内核的能力,这种限制不再完整,Docker现在在GCE上运行良好.
感谢proppy,现在为您记录在Google Compute Engine上运行Docker的说明:http://docs.docker.io/en/master/installation/google/.请享用!
lee*_*man 14
他们现在有一个VM,现在预先安装了docker.
$ gcloud compute instances create instance-name
--image projects/google-containers/global/images/container-vm-v20140522
--zone us-central1-a
--machine-type f1-micro
Run Code Online (Sandbox Code Playgroud)
https://developers.google.com/compute/docs/containers/container_vms
有点晚了,但我想用更详细的工作流程和链接添加答案,因为答案仍然相当分散:
创建一个Docker镜像
一个.本地
湾 使用Google容器生成器
将本地Docker镜像推送到Google Container Repository
docker tag <current name>:<current tag> gcr.io/<project name>/<new name>
gcloud docker -- push gcr.io/<project name>/<new name>
UPDATE
如果已升级到18.03以上的Docker客户端版本,则不再支持gcloud docker命令.而不是上述推动,使用:
docker push gcr.io/<project name>/<new name>
创建一个计算实例. 这个过程实际上混淆了许多步骤.它使用Google Compute Engine创建虚拟机(VM)实例,该实例使用Google提供的容器优化操作系统映像.该图像包括Docker和负责启动我们的docker容器的其他软件.然后从Container Repository中提取我们的容器映像,并在VM启动时使用docker run运行.注意:即使容器正在运行,您仍需要使用docker attach.值得指出的是,每个VM实例只能运行一个容器.使用Kubernetes为每个VM部署多个容器(步骤类似).有关此帖子底部链接中所有选项的更多详细信息,请参阅此页面.
gcloud beta compute instances create-with-container <desired instance name> \
--zone <google zone> \
--container-stdin \
--container-tty \
--container-image <google repository path>:<tag> \
--container-command <command (in quotes)> \
--service-account <e-mail>
提示您可以使用查看可用的gcloud项目 gcloud projects list
SSH进入计算实例.
gcloud beta compute ssh <instance name> \
--zone <zone>
停止或删除实例.如果实例已停止,您仍将需要为静态IP和永久磁盘等资源付费.为避免被收费,请使用删除实例.
一个.停止
gcloud compute instances stop <instance name>
湾 删除
gcloud compute instances delete <instance name>
相关链接:
截至目前,对于刚刚多克尔,集装箱优化的OS肯定是要走的路:
gcloud compute images list --project=cos-cloud --no-standard-images
Run Code Online (Sandbox Code Playgroud)
它预装了 Docker 和 Kubernetes。它唯一缺少的是 Cloud SDK 命令行工具。(尽管 Google 于 2020 年 1 月 1 日宣布 Python 2 下架,但它也缺少 python3。嗯,还有 27 天……)
作为附加的信息的一块,我想和大家分享,我正在寻找,将提供一个标准的图像都泊坞窗和gcloud /预装的gsutil(找不着,哎呀呀)。我不认为我是独自一人在这条船上,因为gcloud
没有 GCE 是你几乎无法经历的事情¹。
到目前为止,我最好的发现是 Ubuntu 18.04 映像,它带有自己的(非 Debian)包管理器 snap。该镜像预装了 Cloud SDK,Docker 安装非常迅速,F1 实例初始测试需要 11 秒,n1-standard-1 需要大约 6 秒。我遇到的唯一障碍是 docker 授权助手不可用的错误消息;尝试添加它gcloud components install
失败,因为 SDK 也是作为 snap 安装的。但是,助手实际上在那里,只是不在 PATH 中。以下是让我以最少的安装脚本运行时间在单个瞬态构建器 VM 中使用这两个工具的原因,从支持的 Ubuntu 18.04 LTS 映像²开始:
snap install docker
ln -s /snap/google-cloud-sdk/current/bin/docker-credential-gcloud /usr/bin
gcloud -q auth configure-docker
Run Code Online (Sandbox Code Playgroud)
¹ 对于 Daisy 工作流程,我需要使用来自 GS 存储桶的工件和来自本地 gcr.io 注册表的两个巨大的 2GB+ 库映像的磁盘映像,这些映像在构建(作为云构建器层)和运行时(我在其中共享)必须创建容器并将其提取到新构建的映像中)。但这不是重点。出于多种可能的原因,人们可能需要这两种工具。
²gcloud compute images list --uri | grep ubuntu-1804
用于获取最新的。
归档时间: |
|
查看次数: |
15317 次 |
最近记录: |