使用Fabric8部署Java项目

时间:2019-05-28 11:04:00

标签: maven docker fabric8 fabric8-maven-plugin

我正在尝试使用Fabric8为我的Java应用程序构建映像。但是,我是新来的,这可能是一个重复的问题。

我已经安装了docker,并通过maven添加了fabric8库。

下面是我对Fabric Maven插件的初始设置。

<plugin>
                <groupId>io.fabric8</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>build</goal>
                        </goals>
                        <configuration>
                            <dockerHost>/var/run/docker.sock</dockerHost>
                            <images>
                                <image>
                                    <alias>${project.artifactId}</alias>
                                    <name></name>
                                    <build>
                                        <from>java:8</from>
                                        <maintainer>${project.maintainer}</maintainer>
                                        <dockerFile>${project.basedir}/Dockerfile</dockerFile>
                                        <dockerHost>/var/run/docker.sock</dockerHost>
                                        <ports>
                                            <port>8080</port>
                                            <port>8081</port>
                                        </ports>
                                    </build>
                                </image>
                            </images>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

下面是我收到的错误消息。

Unable to parse configuration of mojo io.fabric8:docker-maven-plugin:0.30.0:build for parameter dockerHost: Cannot find 'dockerHost' in class io.fabric8.maven.docker.config.BuildImageConfiguration

1 个答案:

答案 0 :(得分:0)

尝试从映像构建配置中删除dockerHost元素。 build configuration没有这样的选项。

dockerHost指定与Docker主机的连接,即将要在其中构建并最终运行映像的机器。实际不需要此选项 除非插件无法自行确定。 docs的“全局配置”部分详细介绍了发现顺序。

如果在运行docker daemon的计算机上使用maven进行构建,则通常不需要此配置。插件将连接到Unix套接字/var/run/docker.sock,这是docker守护程序的默认URL。

如果要求在远程主机上运行映像,则可以指定dockerHost选项或DOCKER_HOST环境变量。在主机上,必须将docker守护程序配置为进行远程访问。

我希望这会有所帮助。