精华内容
下载资源
问答
  • 首先保证项目正常启动与访问 1 配置pom文件打包插件 父级pom文件增加 <build> <...org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifac...

    首先保证项目正常启动与访问

    1 配置pom文件打包插件

    父级pom文件增加

    <build>
    	<plugins>
    		<plugin>
    			<groupId>org.apache.maven.plugins</groupId>
    			<artifactId>maven-compiler-plugin</artifactId>
    			<version>3.1</version>
    			<configuration>
    				<source>1.8</source>
    				<target>1.8</target>
    			</configuration>
    		</plugin>
    		<plugin>
    			<groupId>org.apache.maven.plugins</groupId>
    			<artifactId>maven-surefire-plugin</artifactId>
    			<version>2.19.1</version>
    			<configuration>
    				<skipTests>true</skipTests>    <!--默认关掉单元测试 -->
    			</configuration>
    		</plugin>
    	</plugins>
    </build>
    

    需要打包的子项目
    注意不需要打包的不需要添加*****

    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <configuration>
                        <!-- 指定该Main Class为全局的唯一入口 -->
                        <mainClass>com.sbco.product.server.SbcoEurekaApplication</mainClass>
                        <layout>ZIP</layout>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    

    2 配置docker文件
    在子项目的根目录新建 Dockerfile
    以下是内容详情

    FROM hub.c.163.com/library/java:8-alpine
    
    MAINTAINER xx xxxx
    
    ADD target/*.jar app.jar
    
    EXPOSE 8100
    
    ENTRYPOINT ["java", "-jar", "/app.jar"]
    

    注意如window系统下执行dockerfile
    先安装dockertoolbox
    下面是安装连接
    https://blog.csdn.net/qq_35568099/article/details/80359824
    然后在idea的命令行执行

        SET DOCKER_TLS_VERIFY=1
    	SET DOCKER_HOST=tcp://192.168.99.100:2376
    	SET DOCKER_CERT_PATH=D:\docker\machines\default
    	SET DOCKER_MACHINE_NAME=default
    	SET COMPOSE_CONVERT_WINDOWS_PATHS=true
    

    就可以执行docker的命令了

    展开全文
  • springboot-multi-module-v2:docker部署maven构建多模块springboot项目
  • https://www.keppel.fun/articles/2019/12/30/1577687515298.html
    展开全文
  • 目录 docker-maven-plugin 基本介绍 ...Maven多模块工程 Pom配置-父工程 配置信息 Pom配置-子工程 编写Dockerfile文件制作镜像 前提: 推送镜像-Docker Registry Docker Registry 2.0搭建...

    目录

    docker-maven-plugin 

    基本介绍

    使用手册

    Maven Goals命令

    Maven命令执行顺序

    Skip Docker Goals Bound to Maven Phases(跳过)

    Configuration

    使用示例

    注意事项(准备工作)

    1. 有一台Docker daemon主机

    2. Docker开启远程API

    3. 配置DOCKER_HOST选项

    4. 镜像仓库认证信息

    pom.xml方式

    Maven多模块工程

    Pom配置-父工程

    配置信息

     Pom配置-子工程

    编写Dockerfile文件制作镜像

    前提:

     docker images查看镜像

    推送镜像-Docker Registry

    Docker Registry 2.0搭建

     Docker Registry 用户和密码配置

    推送镜像-阿里云

    异常场景

    1. com.spotify:dockerfile-maven-plugin:1.4.10 not found

    2. java.io.FileNotFoundException: \\.\pipe\docker_engine (系统找不到指定的文件。)

    3.  repository element was not specified in the POM inside distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter

    解决办法1 :

    解决办法2 :


    docker-maven-plugin 

    我们常见开源项目中使用的Docker Maven插件是com.spotify:docker-maven-plugin。可用版本信息见Github

    通过其介绍可知该插件已经不再推荐使用,取而代之的是com.spotify:dockerfile-maven-pluginGithub地址

    使用该插件可以在mvn命令中直接构建出Docker镜像和完成推送等。

    dockerfile-maven-plugin要求用户必须提供Dockerfile用于构建镜像,从而将Docker镜像的构建依据统一到Dockerfile上,这与过时的docker-maven-plugin是不同的。

    基本介绍

    相比docker-maven-plugin更加灵活安全

    也能够绑定 Docker 命令到 Maven 各生命周期

    使用手册

    Maven Goals命令

    Goals available for this plugin:

    GoalDescriptionDefault Phase
    dockerfile:buildBuilds a Docker image from a Dockerfile.package
    dockerfile:tagTags a Docker image.package
    dockerfile:pushPushes a Docker image to a repository.deploy

    Maven命令执行顺序

    mvn package
    mvn dockerfile:build
    mvn verify
    mvn dockerfile:push
    mvn deploy

    Skip Docker Goals Bound to Maven Phases(跳过)

    You can pass options to maven to disable the docker goals.

    Maven OptionWhat Does it Do?Default Value
    dockerfile.skipDisables the entire dockerfile plugin; all goals become no-ops.false
    dockerfile.build.skipDisables the build goal; it becomes a no-op.false
    dockerfile.tag.skipDisables the tag goal; it becomes a no-op.false
    dockerfile.push.skipDisables the push goal; it becomes a no-op.false

    For example, to skip the entire dockerfile plugin:

    mvn clean package -Ddockerfile.skip
    

    Configuration

    Build Phase

    Maven OptionWhat Does it Do?RequiredDefault Value
    dockerfile.contextDirectoryDirectory containing the Dockerfile to build.yesnone
    dockerfile.repositoryThe repository to name the built imagenonone
    dockerfile.tagThe tag to apply when building the Dockerfile, which is appended to the repository.nolatest
    dockerfile.build.pullNewerImageUpdates base images automatically.notrue
    dockerfile.build.noCacheDo not use cache when building the image.nofalse
    dockerfile.build.cacheFromDocker image used as cache-from. Pulled in advance if not exist locally or pullNewerImage is falsenonone
    dockerfile.buildArgsCustom build arguments.nonone
    dockerfile.build.squashSquash newly built layers into a single new layer (experimental API 1.25+).nofalse

    使用示例

    https://github.com/spotify/dockerfile-maven/tree/master/plugin/src/it

    注意事项(准备工作)

    该插件需要Java 7或更高版本以及Apache Maven 3或更高版本(dockerfile-maven-plugin <= 1.4.6需要Maven> = 3在其他情况下需要Maven> = 3.5.2)。

    要运行集成测试或在实践中使用插件,需要有效的Docker设置。

    1. 有一台Docker daemon主机

    镜像的制作以及推送操作,都是由Docker来完成的,所以,必须要安装Docker环境。简单的说dockerfile-maven-plugin只是简化了直接操作Docker的复杂度,该是Docker完成的事情,还得由Docker来完成。
    所以,明白这一点之后,就知道了并不是一定要在本地安装Docker环境,只要有Docker环境就可以了。

    2. Docker开启远程API

    Docker开启远程API

    3. 配置DOCKER_HOST选项

    要使用服务器的Docker环境,需要配置一个环境变量(默认情况下,插件是连接本地的Docker环境,即127.0.0.1)

    环境变量的配置如下,改成你自己的服务器Docker环境即可(可能需要重启电脑):
    DOCKER_HOST tcp://192.168.1.6:2375

    标题

    4. 镜像仓库认证信息

    该插件构建和发布镜像依赖于镜像仓库,需要用户提供镜像仓库的登录信息,支持POM设置和Settings设置

    具体参考:https://github.com/spotify/dockerfile-maven/blob/master/docs/authentication.md

    pom.xml方式

    从1.3.XX版开始,你可以使用pom本身的config进行身份验证。只需添加类似于以下内容的配置:

     <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>dockerfile-maven-plugin</artifactId>
        <version>${version}</version>
        <configuration>
            <username>repoUserName</username>
            <password>repoPassword</password>
            <repository>${docker.image.prefix}/${project.artifactId}</repository>
            <buildArgs>
                <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
            </buildArgs>
        </configuration>
    </plugin>

    或者

     <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>dockerfile-maven-plugin</artifactId>
        <version>${version}</version>
        <configuration>
            <repository>${docker.image.prefix}/${project.artifactId}</repository>
            <buildArgs>
                <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
            </buildArgs>
        </configuration>
    </plugin>

    然后使用命令

    mvn goal -Ddockerfile.username=... -Ddockerfile.password=...

    Maven多模块工程

    Pom配置-父工程

                   <!-- 构建和推动Docker镜像 -->
                    <plugin>
                        <groupId>com.spotify</groupId>
                        <artifactId>dockerfile-maven-plugin</artifactId>
                        <version>${docker.maven.plugin.version}</version>
                        <executions>
                            <execution>
                                <id>default</id>
                                <goals>
                                    <!--如果package时不想用docker打包,就注释掉这个goal-->
                                    <goal>build</goal>
                                    <goal>push</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <contextDirectory>${project.basedir}</contextDirectory>
                            <useMavenSettingsForAuth>true</useMavenSettingsForAuth>
                            <repository>${docker.repository.url}/${docker.registry.name}/${project.artifactId}</repository>
                            <username>${docker.registry.username}</username>
                            <password>${docker.registry.password}</password>
                            <tag>${project.version}</tag>
                            <buildArgs>
                                <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
                            </buildArgs>
                        </configuration>
                    </plugin>

    配置信息

            <!--Registry2仓库的地址,ip:port-->
            <!--<docker.repository.url>192.168.172.128:5000</docker.repository.url>-->
            <docker.repository.url>registry.cn-beijing.aliyuncs.com</docker.repository.url>
            <!--上传的Docker镜像前缀,此前缀一定要和Harbor中的项目名称一致,和阿里云仓库的命名空间一致-->
            <docker.registry.name>fly_jt</docker.registry.name>
            <docker.registry.username>XXX@sina.com</docker.registry.username>
            <docker.registry.password>XXX</docker.registry.password>
            <docker.maven.plugin.version>1.4.13</docker.maven.plugin.version>

     Pom配置-子工程

                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>dockerfile-maven-plugin</artifactId>
                    <configuration>
                        <tag>${project.version}</tag>
                    </configuration>
                </plugin>

    编写Dockerfile文件制作镜像

    前提:

    1. 要有环境变量DOCKER_HOST的配置

    2. 要在子工程的目录下(与pom文件同级)创建一个Dockerfile文件

    #设置镜像基础,jdk8
    FROM java:8
    #维护人员信息
    MAINTAINER FLY
    #设置镜像对外暴露端口
    EXPOSE 8080
    #将当前 target 目录下的 jar 放置在根目录下,命名为 app.jar,推荐使用绝对路径。
    ADD target/devicemag-core-1.0.0.jar /devicemag-core-1.0.0.jar
    #执行启动命令
    ENTRYPOINT ["java", "-jar","/devicemag-core-1.0.0.jar"]

    在父工程 , 执行mvn clean package 或者 mvn dockerfile:build 打包命令,即可制作镜像

     docker images查看镜像

    [root@localhost ~]# docker images
    REPOSITORY                                                  TAG                 IMAGE ID       CREATED              SIZE
    registry.cn-beijing.aliyuncs.com/fly_jt/devicemag-file      1.0.0               d09619501d27   11 seconds ago       643MB
    registry.cn-beijing.aliyuncs.com/fly_jt/devicemag-system    1.0.0               9497ab784991   13 seconds ago       643MB
    registry.cn-beijing.aliyuncs.com/fly_jt/devicemag-gateway   1.0.0               861d2577311b   16 seconds ago       643MB
    registry.cn-beijing.aliyuncs.com/fly_jt/devicemag-auth      1.0.0               98ff94ed01d0   17 seconds ago       643MB
    registry.cn-beijing.aliyuncs.com/fly_jt/devicemag-core      1.0.0               3defff63849a   About a minute ago   643MB
    mysql                                                       5.7                 a70d36bc331a   2 weeks ago          449MB
    redis                                                       5                   e35748fd6a72   3 weeks ago          98.4MB
    portainer/portainer-ce                                      latest              980323c8eb3f   4 weeks ago          196MB
    registry.cn-beijing.aliyuncs.com/fly_jt/portainer-ce        2.0.1               980323c8eb3f   4 weeks ago          196MB
    registry                                                    2                   678dfa38fcfa   7 weeks ago          26.2MB
    nacos/nacos-server                                          1.3.0               d1f1facebfbc   8 months ago         756MB
    rabbitmq                                                    3.7.15-management   f05c3eb3cf91   19 months ago        179MB
    java                                                        8                   d23bdf5b1b1b   4 years ago          643MB
    [root@localhost ~]# 
    

    推送镜像-Docker Registry

    Docker Registry 2.0搭建

    docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry2 registry:2

    [root@localhost ~]# docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry2 registry:2
    cba73bc3417883d68d1d47c17e48bc62b0ca8705b1a2532be4f1f8c0f659db45
    [root@localhost ~]# docker ps -a
    CONTAINER ID   IMAGE                                      COMMAND                  CREATED         STATUS                PORTS                                                                                                                                         NAMES
    cba73bc34178   registry:2                                 "/entrypoint.sh /etc…"   6 seconds ago   Up 2 seconds          0.0.0.0:5000->5000/tcp, :::5000->5000/tcp                                                                                                     registry2
    

    启动验证

    1、列出所有镜像

    # curl http://192.168.172.128:5000/v2/_catalog

    2、查看指定镜像都有哪些tag

    # curl http://192.168.172.128:5000/v2/镜像名/tags/list

     Docker Registry 用户和密码配置

    容器运行成功,直接使用docker login 192.168.172.128:5000命令,输入Username和Password

    我这里设置的是

    用户名: test
    密码:test

    用户和密码base64

    [root@localhost ~]# echo Hello World | base64^C
    [root@localhost ~]# echo test:test | base64 
    dGVzdDp0ZXN0Cg==
    [root@localhost ~]# echo dGVzdDp0ZXN0Cg== | base64 -d
    test:test
    

    然后再  /.docker/config.json 添加如下内容
    {
        "auths": {
            "192.168.172.128:5000": {
                "auth": "dGVzdDp0ZXN0"
            }
        }

    [root@localhost ~]# docker login 192.168.172.128:5000
    Username: test
    Password: 
    WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
    Configure a credential helper to remove this warning. See
    https://docs.docker.com/engine/reference/commandline/login/#credentials-store
    
    Login Succeeded
    [root@localhost ~]# cat ~/.docker/config.json
    {
    	"auths": {
    		"192.168.172.128:5000": {
    			"auth": "dGVzdDp0ZXN0"
    		}
    	}
    }

    参考上面在父工程Pom中指定 repository 、username、password

    推送镜像-阿里云

    阿里云镜像仓库:拉取和推送Docker镜像

    同时 参考上面在父工程Pom中指定 repository 、username、password

    推送镜像-阿里云

     在子工程 , 执行mvn deploy或者 mvn dockerfile:push 命令,即推送镜像

    异常场景

    1. com.spotify:dockerfile-maven-plugin:1.4.10 not found

    在Maven配置文件settings.xml中添加

      <pluginGroups>
        <!-- pluginGroup
         | Specifies a further group identifier to use for plugin lookup.
        <pluginGroup>com.your.plugins</pluginGroup>
        -->
    	<pluginGroup>com.spotify</pluginGroup>
      </pluginGroups>

    2. java.io.FileNotFoundException: \\.\pipe\docker_engine (系统找不到指定的文件。)

    [ERROR] Failed to execute goal com.spotify:dockerfile-maven-plugin:1.4.13:build (default) on project devicemag-core: Could not build image: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: java.io.FileNotFoundException: \\.\pipe\docker_engine (系统找不到指定的文件。) -> [Help 1]

    要使用服务器的Docker环境,需要配置一个环境变量(默认情况下,插件是连接本地的Docker环境,即127.0.0.1)

    环境变量的配置如下,改成你自己的服务器Docker环境即可(可能需要重启电脑):
    DOCKER_HOST tcp://192.168.1.6:2375

    标题

    3.  repository element was not specified in the POM inside distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter

    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project devicemag-core: Deployment failed: repository element was not specified in the POM inside distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter -> [Help 1]

    需要注意的是,如果你没有配置部署artifact的maven repository,请不要使用mvn deploy命令,因为它会执行maven-deploy-plugin的deploy目标,而由于没有配置要部署的远程maven repository,会报类似如上的错。

    解决办法1 :

    在pom.xml中,应该将distributionManagement配置添加到要部署的位置。

    <distributionManagement>
           <repository>
             <id>internal.repo</id>
             <name>Internal repo</name>
             <url></url>
           </repository>
       </distributionManagement>

    可以在部署期间使用以下命令添加另一个位置(但为了避免出现上述错误,应至少配置一个存储库):

    解决办法2 :

    使用 mvn dockerfile:push 命令

    展开全文
  • 主要介绍了IntelliJ IDEA 构建maven多模块工程项目(详细图),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • dockerfile-maven-插件 一个基于模板生成 Dockerfile 的 Maven 插件。 = 用法 = == pom.xml == 将以下插件声明添加到您的 pom.xml: [..] <groupId>org.acmsl <artifactId>dockerfile-maven-plugin ...
  •  then echo 停止docker容器 sudo docker stop $NAME echo 删除docker容器 sudo docker rm $NAME fi echo 构建docker镜像 sudo docker build -t $NAME:0.0.1 ./ echo 启动docker容器 sudo docker ...

     

    原文地址 http://teemor.xyz/article?id=80

     

     

     

    1. 配置jenkins环境

     

    安装插件

    • gitee
    • publish over ssh 构建后将包发送到应用部署服务器,如果应用服务器和jenkins在是一台服务器则无需该插件

     

     

    系统管理 =》系统设置

     

    Publish over SSH

     

     

    注意:Remote Directory是复制过去后存放文件路径的起始地址,后面在项目里配置时的路径为基于该路径的相对地址

     

    配置gitee

    点击添加按钮添加gitee令牌

    根据提示网址获取gitee令牌

    设置完之后点击页面下方的保存按钮

     

     

    系统管理 =》全局工具设置

     

    1.1. 配置maven setting路径

     

     

     

    1.2. 配置jdk路径

     

     

     

     

    1.3. 配置git路径

     

    1.4. 配置maven安装路径

    1.5. 

     

    2. 新建项目

     

    这里选择构建一个自由风格的项目,然后点击确定

     

    选择gitee链接

    之前配置的

    配置源码仓库

    1、git:

    设置仓库地址,并且点击添加,添加gitee帐号,设置一次之后,后面就可以直接从下拉框选择已设置的帐号,同时设置项目所选分支如master分支

    添加凭据时选择用户名后密码类型的凭据就可以

    2、svn方式:当一个git仓库下同时存在多个项目时,使用git方式每次都会把整个仓库拉下来,这时就可以通过svn插件拉取需要拉取的项目。(gitee可以使用svn拉取仓库)

     

    配置项目路径时,使用仓库地址加上项目的相对路径

    设置构建命令

    maven版本为之前配置的

    设置构建脚本 

    点击增加构建步骤,选择执行shell

     

    编辑shell脚本

    附上自用shell脚本

    #!/bin/sh
    WORKSPACE='/var/lib/jenkins/workspace/test' #当前项目的工作空间路径,即jenkins构建后的项目根路径
    PROJECT='/target' #编译文件所在路径
    TARGET='/home/teemor/docker_home/test' #项目部署路径,也就是Dockerfile所在路径
    NAME='test' #项目名
    PORT='8770' #项目暴露的端口
    CONTAINER_ID=`sudo docker ps -a | grep $REPOSITORIES | awk '{print $1}'`
    
    echo 容器ID $CONTAINER_ID
    
    cd $WORKSPACE$PROJECT
    echo 当前路径
    pwd
    
    echo 复制文件开始
    
    sudo cp ./$NAME.jar $TARGET
    
    echo 复制文件结束
    
    cd $TARGET
    
    echo 当前路径
    pwd
    
    if [ -n "$CONTAINER_ID" ]; then
    
    
    echo 停止docker容器
    
    sudo docker stop $NAME
    
    
    echo 删除docker容器
    sudo docker rm $NAME
    fi
    
    echo 构建docker镜像
    sudo docker build -t $NAME:0.0.1 ./
    
    echo 启动docker容器
    sudo docker run -d --name $NAME-p $PORT:$PORT $NAME:0.0.1
    
    

     

    提示:脚本执行可能会失败,因为jenkins是使用jenkins用户执行脚本的,没有sudo权限,需要配置

     

    先以root用户的身份登录,然后执行vi sudo   , 或者其他具有sudo 权限的用户执行 sudo visudo也是一样的

     

    在打开的文件中找到

    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    

     

    在这一行下面添加用户名,然后保存退出,之后用户就具有使用sudo命令的权限了。

    修改后如下所示

    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    jenkins    ALL=(ALL)    ALL
    

     

    如果要让用户在使用sudo的时候不再需要输入密码,还需要修改刚才的文件visduo

    jenkins    ALL=(ALL)    NOPASSWD:ALL
    

     

     

    如果是需要打包后部署到其它服务器则按以下方式

     

    部署到远程主机则构建过程只需要配置maven打包,无需设置shell命令。

     

    构建后操作:点击增加构建后操作步骤,选择 send build artifacts over ssh。前面安装插件时提到过需要安装publish over ssh插件

     

     

    Remote Directory 为相对地址,基于之前设置中配置的路径

     

    bash /home/teemor/docker_home/deploy.sh  -p 7020 -n test
    -j /home/teemor/docker_home/test
    

     

    部署脚本,和之前直接编辑在构建脚本的类似,构建脚本也可以改为直接调用shell脚本,这样配置jenkins时更方便

    #!/bin/sh
    while getopts :p:n:j: opt; do
         case $opt in
         p) PORT=${OPTARG}
               ;;
         n) CONTAINER_NAME=${OPTARG}
               ;;
         j) JAR_PATH=${OPTARG}
               ;;
         esac
    done
    
    echo config:
    echo    PORT: $PORT
    echo    CONTAINER_NAME: $CONTAINER_NAME 
    echo    JAR_PATH: $JAR_PATH
    
    CONTAINER_ID=`sudo docker ps -a | grep $CONTAINER_NAME | awk '{print $1}'`
    
    echo 容器ID $CONTAINER_ID
    
    if [ -n "$CONTAINER_ID" ]; then
    
    
    echo 停止docker容器...
    
    sudo docker stop $CONTAINER_NAME
    
    
    echo 删除docker容器...
    sudo docker rm $CONTAINER_NAME
    fi
    
    echo 构建docker镜像
    sudo docker build -t $CONTAINER_NAME:0.0.1 $JAR_PATH
    
    echo 启动docker容器...
    sudo docker run -d --name $CONTAINER_NAME -p $PORT:$PORT $CONTAINER_NAME:0.0.1
    
    

     

     

    最后附上Dockerfile

     

    在部署ar包的目录(/home/teemor/docker_home/test)下创建Dockerfile文件,名字就是Dockerfile,Dockerfile内脚本如下

    From java:8
    
    ADD test.jar /app.jar
    
    EXPOSE 8090
    
    ENTRYPOINT ["java","-jar","/app.jar"]
    
    

     

    docker安装和使用方式请百度

     

    一切设置完成之后,点击保存,会自动跳转到项目页面,点击立即构建

     

    构建过程中,点击此处可以查看本次构建信息

    点击控制台输出可以查看构建过程中打印的日志信息,便于跟踪排查错误信息



    著作权归作者所有。
    商业转载请联系作者获得授权,非商业转载请注明出处。
    作者:zhoulk
    来源:https://blog.teemor.xyz
     

     

    展开全文
  • 1.安装docker 按照菜鸟教程装就行了:https://www.runoob.com/docker/centos-docker-install.html, 还有docker镜像加速也要配上,否则下载镜像速度会很慢 2.安装jenkins镜像并启动容器 2.1 进入docker hub...
  • 上文讲述的方式是最简单的方式,很时候,我们还是要借助Dockerfile进行构建的,首先我们在/microservice-discovery-eureka/src/main/docker目录下,建立文件Dockerfile FROM java:8 VOLUME /tmp ADD ...
  • 参考: 1、https://blog.csdn.net/qq_25113803/article/details/100863266 2、https://blog.csdn.net/u012280292/article/details/86519340
  • 普通maven项目集成docker打镜像

    千次阅读 2018-09-25 18:36:54
    本人在开发一个新项目是用maven构建的,在本地开发完成后,要用docker打成镜像部署到容器 一下是简单的步骤,作为记录: 1:引入插件:见代码 &lt;plugin&gt; &lt;groupId&gt;com.spotify&...
  • 1. 首先创建一个示例项目,具体见GitHub,项目结构跟...DockerApplication.java:创建了Rest接口返回字符串 “Hello Docker World” package com.bennetty74; import org.springframework.boot.SpringApplication;..
  • 问题场景:maven项目,一个parent的module,但是这个parent的packaging是pom,然后有四个module,都是springboot的微服务,都需要打成jar形式,还有一个common的  module,不需要打成image。... docker-maven-plugin
  • 在团队协作开发的时候,为了方便管理各个模块maven导入,搭建企业私有仓库就比较方便。本文就使用 nexus 搭建 maven 以及docker 的企业私有仓库
  • 使用docker部署spring-boot多模块依赖工程 转载:https://hbxflihua.iteye.com/blog/2432005 使用docker部署spring-boot多模块依赖工程 项目架构 dw | |----dw-demo(接口demo) | |----dw-core(代码核心)...
  • 使用Maven插件构建Docker镜像

    万次阅读 2017-09-20 17:00:49
    1.7 Docker与微服务-使用Maven插件构建Docker镜像 7 Docker与微服务-使用Maven插件构建Docker镜像 工具使用插件构建Docker镜像 简单使用使用Dockerfile进行构建将Docker镜像push到DockerHub上将...
  • 1.项目结构 ...main模块的子模块有:official,user,auth-jwt,common,global-config,global-handle,除了official和user的打包方式是pom外,其他都是jar,作为公共模块 user模块的子模块有:user-dao,us...
  • 技术体系主要就是SpringCloud的一套,发布主要采用k8s+docker的方式去发布,这里主要讲解记录笔者使用官方推荐的一款插件:dockerfile-maven-plugin 对SpringCloud项目进行打包、把镜像发布到Docker镜像仓库私服...
  • maven-compiler-plugin的版本提高到3.7不行, 添加编译时运行参数增大内存也不行, 目录结构也是遵循规则 1.src/main/java的结构 2./src与/test与pom.xml一个层级 最后还是配置的问题 在出问题的模块pom.xml添加如下...
  • 记录一个碰到的古怪问题现象是, 我在使用springboot作为框架时, 使用了maven的子模块, 当开启eclipse的auto build时没有问题怀疑是eclipse自己对项目进行了build,然后把class放在了正确的位置当关闭了eclipse的...
  • docker-maven-plugin 0.4.11 org.apache.maven.plugins maven-compiler-plugin 3.6.0 ${java.version} ${java.version} org.apache.maven.plugins maven-jar-plugin 3.0.2 The POM.xml of the rest-client-...
  • Carnotzet允许您使用maven依赖项轻松共享,版本化和重用大型模块化开发和测试环境。 我们要解决什么? 我们喜欢拥有轻便,可复制,隔离和可移植的开发/测试环境。 当您拥有由不同团队管理的许多共享服务和中间件...
  • SpringBoot项目(单模块多模块)使用docker容器运行jar包镜像(采坑) 1.mavem docker插件配置 &amp;amp;lt;!--docker 插件配置--&amp;amp;gt; &amp;amp;lt;build&amp;amp;gt; &amp;amp;...
  • docker安装:...一、通过Maven插件自动编译打包工程并上传到docker私有仓库: 说明:会自动生成docker镜像,还是需要手动创建docker容器。 1.让宿主机docker允许被远程访问: (1)修改docker.service
  • 本文使用docker镜像实现nexus的一键部署,并且进行相关配置,测试完成maven工程的打包上传 文章目录一 利用Docker镜像搭建Nexus仓库1 建立 nexus-data 数据卷2 启动镜像二 完成Nexus设置修改密码添加用户获取仓库url...
  • 这里完全使用idea docker插件进行docker 镜像创建不依赖 mavendocker插件 idea 安装docker插件 安装页面如下: 这里已经安装过了,如果没有安装,搜索到docker后点击 install 进行安装 插件安装完成后需要重启...
  • 项目结构: ├─simple-example 根目录 ├─common 工具类包配置如fastjson,mybatisplus,swagger的配置,...spring-boot-maven-plugin要写到根目录的pom文件中 <build> <plugins> <plugin> <
  • 2. maven构建所在的服务器上(或者jenkins容器里),配置好一个host 3. pom.xml Maven插件相关配置 <properties> <docker.image.prefix>registry.cn-beijing.aliyuncs.com</docker.image.prefix>...
  • true org.springframework.boot spring-boot-maven-plugin 2.3.7.RELEASE repackage repackage com.spotify dockerfile-maven-plugin ${dockerfile-maven-plugin.version} default build ${docker.image.prefix} ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,090
精华内容 3,636
关键字:

maven多模块docker