Docker compose标记和推送
我有几个docker容器,我尝试与Docker compose标记和推送,docker,docker-compose,Docker,Docker Compose,我有几个docker容器,我尝试与docker compose同步(目前由bash脚本运行)。我正在寻找一种方法来标记并将它们推送到我们基于ec2的dockerhub(专用服务器)上 简单地使用docker我们做了类似的事情(针对每个容器): 但当我跑步时: $ docker-compose push 我得到: Pushing some (base:<docker_hub_server>/base:latest)... ERROR: invalid reference format
docker compose
同步(目前由bash脚本运行)。我正在寻找一种方法来标记并将它们推送到我们基于ec2的dockerhub(专用服务器)上
简单地使用docker
我们做了类似的事情(针对每个容器):
但当我跑步时:
$ docker-compose push
我得到:
Pushing some (base:<docker_hub_server>/base:latest)...
ERROR: invalid reference format
推送一些(基本:/基本:最新)。。。
错误:引用格式无效
有没有关于如何标记和推动我的容器的想法
p、 美国:我知道这不是使用docker compose的方式,但我也知道这是可能的,而且它符合我的需要。我已经用docker Hub测试了这种方法,因此您应该能够通过以下配置和shell会话实现您想要的: docker-compose.yml (此处,如果您使用的不是Docker Hub而是另一个Docker注册表,例如,
quay.io/user/project-1
,则应将user/project-1
替换为registry.name/user/project-1
)
此处涉及的各种字段(构建:
,上下文:
,等等)如中所述
上面的docker compose.yml
文件假定您有以下树(包括一个和一些文件,以符合最佳实践):
然后在终端中执行以下操作:
$ docker login
# → append the domain name of your Docker registry
# if you are not using Docker Hub; for example:
# docker login quay.io
$ docker-compose build --pull
$ docker-compose push
# and optionally:
$ docker logout
最后,以下是一些评论,以澄清与您的问题相关的一些细节:
- 在您的示例会话中
$ docker build -f someDockerfile -t some . # with "." as context build path $ docker tag some …/some $ docker push …/some
是一个临时图像名(而不是容器),因此它似乎没有必要:您也可以运行以下命令,并获得相同的结果some
$ docker build -f someDockerfile -t …/some . $ docker push …/some
- 您的
示例包含以下行:docker compose.yml
其中image: some:<docker_hub_server>/some
应该是所需Docker注册表的域名或主机名(如果省略,它将默认为Docker Hub) 这一点在本文中提到 例如,如果您使用码头码头装卸工注册表,图像标记可以是registry.name
或更简洁的Quay.io/user/some:latest
Quay.io/user/some
docker compose.yml
使用docker compose build
和docker compose push
,cf生成并推送在docker compose.yml>中指定的图像。这对我不起作用。我如何把所有在当地建造的码头工人推到@Notsobaby好的,所以我做了一些实验,它对我有效。我重构了我的答案以添加更多细节(关于.yml
、要运行的命令和图像标签命名约定)。希望这能有所帮助。哇,这个提示“有些是临时的图像名称(不是容器),所以它似乎没有必要”改变了我的想法!我怎么就不能想到这一点如此明显?当然,删除“标记”步骤很简单!!Thnx。
$ docker login
# → append the domain name of your Docker registry
# if you are not using Docker Hub; for example:
# docker login quay.io
$ docker-compose build --pull
$ docker-compose push
# and optionally:
$ docker logout
$ docker build -f someDockerfile -t some . # with "." as context build path
$ docker tag some …/some
$ docker push …/some
$ docker build -f someDockerfile -t …/some .
$ docker push …/some
image: some:<docker_hub_server>/some
registry.name:port/user/project:version