Docker Java 个项目的图像

Docker image of Java project

我正在尝试为 java 项目制作 docker 图像。我首先创建了一个目录,并在其中创建了一个 docker.txt 文件。这些文件包含这个

FROM java:8 

# Install maven
RUN apt-get update  
RUN apt-get install -y maven

WORKDIR /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient

# Prepare by downloading dependencies
ADD pom.xml /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient/pom.xml  
RUN ["mvn", "dependency:resolve"]  
RUN ["mvn", "verify"]

# Adding source, compile and package into a fat jar
ADD src /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient/src  
RUN ["mvn", "package"]

EXPOSE 4567  
CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "target/sparkexample-jar-with-dependencies.jar"]

然后我 运行 在终端中执行以下命令

docker build -t API .

我收到以下错误

invalid value "API" for flag -t: Error parsing reference: "API" is not a valid repository/tag
See 'docker build --help'.

Docker 在某种意义上抱怨 "API" 不允许标签名称包含一个或多个大写字符:

$ docker build -t FOO .
repository name component must match "[a-z0-9](?:-*[a-z0-9])*(?:[._][a-z0-9](?:-*[a-z0-9])*)*"

通常"recipes"构建Docker镜像都写在一个名为Docker的文件中,反正你可以继续使用docker.txt使用-f选项:

docker build -f docker.txt -t api .