我正在尝试使用docker compose构建映像/容器。容器成功构建/运行,但是图像stdlib.h
和REPOSITORY
在TAG
的输出中都显示为<none>
,并且容器获得了自动生成的名称(例如{ {1}})。我希望它使用在配置文件中指定的名称来标记图像/容器(在这种情况下,我希望将它们命名为“ myservice”,并将图像标记为“ v2”)。
我有以下docker images
:
eloquent_wiles
这是我的docker-compose.yml
:
version: '3'
services:
myservice:
build: .
image: myservice:v2
container_name: myservice
ports:
- "1337:1337"
Dockerfile
给出FROM node:10
WORKDIR /usr/src/myservice
COPY . /usr/src/myservice
EXPOSE 1337/tcp
RUN yarn \
&& yarn transpile \
&& node ./build/grpc-server.js
docker -v
给出Docker version 18.09.2, build 6247962
我正在运行docker-compose -v
。使用docker-compose版本2可获得相同的结果。
我想没有人能发现我在做什么错吗?
答案 0 :(得分:0)
docker build -t <repo>:<tag> .
。docker stack deploy -c <your_yaml_file> <your_stack> --with-registry-auth
。答案 1 :(得分:0)
我真傻。问题出在Dockerfile
的最后一行,您可以在其中看到我作为构建过程的一部分而不是入口点启动服务器,从而阻止了构建到达标记图像的步骤。
感谢@Mihai指出<none>:<none>
图像是中间图像,而不是我构建的结果。