Amazon web services gitlab CI创建docker映像并推送到AWS
我在AWS上设置了docker注册表(ECR)。在我的gitlab存储库中,我想设置一个CI来自动创建图像并将它们推送到存储库。 我按照以下步骤设置所有内容,但在运行示例时,我收到了错误Amazon web services gitlab CI创建docker映像并推送到AWS,amazon-web-services,docker,gitlab-ci,Amazon Web Services,Docker,Gitlab Ci,我在AWS上设置了docker注册表(ECR)。在我的gitlab存储库中,我想设置一个CI来自动创建图像并将它们推送到存储库。 我按照以下步骤设置所有内容,但在运行示例时,我收到了错误 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 我的yml文件看起来像这样 image: docker:latest variables: REPOSITO
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
我的yml文件看起来像这样
image: docker:latest
variables:
REPOSITORY_URL: <aws-url>/<registry>/outsite-slackbot
services:
- docker:dind
before_script:
- apk add --no-cache curl jq python py-pip
- pip install awscli
stages:
- build
build:
stage: build
script:
- $(aws ecr get-login --no-include-email --region eu-west-1)
image:docker:latest
变量:
存储库\u URL://outsite slackbot
服务:
-码头工人:丁
在脚本之前:
-apk add——无缓存curl jq python py pip
-pip安装awscli
阶段:
-建造
建造:
阶段:建造
脚本:
-$(aws ecr get登录--不包括电子邮件--地区eu-west-1)
docker文件没有问题,顺便说一下,您无法连接到docker守护程序。因此,请检查以下步骤:
- 您是否以root用户身份登录?(
或sudo su
)sudo-i
- 启动Docker服务(
)服务Docker Start
然后按照教程进行操作:)docker文件没有问题,顺便说一下,您无法连接到docker守护程序。因此,请检查以下步骤:
- 您是否以root用户身份登录?(
或sudo su
)sudo-i
- 启动Docker服务(
)服务Docker Start
然后按照教程进行操作:)您使用的是私人跑步者还是来自gitlab.com的跑步者?我使用的是共享跑步者,因此没有私人跑步者您使用的是私人跑步者还是来自gitlab.com的跑步者?我使用的是共享跑步者,因此,没有专用onesCan我可以从CI内启动服务?您应该从Gitlab服务器启动它,然后Gitlab CI将向Docker请求。从github服务器启动它是什么意思?docker守护程序不应该在定义的映像内运行吗(在本例中,docker:latest是alpine)?您不能在映像内运行docker守护程序,您可以使用它,您希望在Gitlab CI配置(yml文件)内使用docker映像,但问题是您与docker的连接,没有docker就没有docker映像。因此,在Gitlab服务器中,您的CI至少需要一个Gitlab运行程序。默认情况下,Gitlab上没有安装Gitlab runner。*我可以从CI中启动服务吗?您应该从Gitlab服务器启动服务,然后Gitlab CI将向Docker请求。从github服务器启动服务是什么意思?docker守护程序不应该在定义的映像内运行吗(在本例中,docker:latest是alpine)?您不能在映像内运行docker守护程序,您可以使用它,您希望在Gitlab CI配置(yml文件)内使用docker映像,但问题是您与docker的连接,没有docker就没有docker映像。因此,在Gitlab服务器中,您的CI至少需要一个Gitlab运行程序。默认情况下,Gitlab上没有安装Gitlab runner*