docker 发布 spring boot

# docker issues
## docker部署发布 spring boot
1. 先mvn打包
    > mvn package
    在target生成一个类似appname-0.0.1-SNAPSHOT.jar的文件
2. 将src,pom,mvn打包的jar包文件上传到服务器的某个目录例如docker
3. 在此目录下执行
    > mvn package docker:build
    如果报错“No plugin found for prefix ‘docker’ in the current project and in the plugin groups ”
    则在maven的conf/setting文件中加入
    <pluginGroups>  
        <pluginGroup>com.spotify</pluginGroup>  
    </pluginGroups>

    详细原因:https://github.com/spotify/docker-maven-plugin/issues/322

    同时记得在pom文件中加入docker-maven-plugin插件

     <!–加入maven插件“docker-maven-plugin”–>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.14</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<!–<dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>–>
<dockerDirectory>${project.basedir}</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>

4. 打包结束后使用docker查看镜像文件

    > docker images    

5 运行

docker run -it -d -p 443:8080 springboot/programe
 
 ## docker命令
* 停止所有镜像:  docker stop $(docker ps -a -q)
* docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
* docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
* 删除所有none的镜像: docker images|grep none|awk '{print $3 }'| xargs docker rmi,如果删不掉则先
> 先查询记录 docker ps -a
  把该镜像的记录全部删除掉,如果删除所有镜像的记录,可以使用:
  docker ps -a|awk '{print $1}'|xargs docker rm   
  然后再删除即可 

Avatar photo

About Blackford

这是个最好的时代,这是个最坏的时代,这是个充满希望的春天,这是个令人绝望的冬天,我们前面什么都有,我们前面什么都没有。梦想,让我们一次次的走远,又一次次的回头,一个关于人生的梦想还在不断奔跑,带着喜悦和疼痛,不过一切才刚刚开始,并且直到今天也远远没有结束
This entry was posted in 架构运维. Bookmark the permalink.

发表评论

电子邮件地址不会被公开。 必填项已用*标注