Idea集成docker

1. 开启宿主机上的docker的tcp远程访问权限。

编辑docker.service
vim /usr/lib/systemd/system/docker.service

找到并修改ExecStart属性(修改为以下格式,建议把原来的加井号注释!)
ExecStart=/usr/bin/dockerd  -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

刷新配置,重启服务
systemctl daemon-reload
systemctl restart docker

在这里插入图片描述

2. 通过maven插件构建docker镜像

 
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
            
            
                com.spotify
                docker-maven-plugin
                1.1.0
                
                
                    
                        build-image
                        
                        package
                        
                            build
                        
                    
                
                
                    
                    mall-tiny/${project.artifactId}:${project.version}
                    
                    http://localhost:2375
                    
                    true
                    
                    java:8
                    
                    ["java", "-jar","/${project.build.finalName}.jar"]
                    
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                
            
        
    

3. 使用maven的打包打包命令即可完成镜像的构建。

Idea集成docker_第1张图片

4. 使用Dockerfile实现镜像构建方式

  • 使用Dockerfile进行更精确、有可读性地构建容器镜像。

4.1 1 在项目的 src/main 路径下,创建一个docker目录,并在docker目录下新建一个Dockerfile文件

# Base images 基础镜像
FROM java:8

#MAINTAINER 维护者信息
MAINTAINER zhanjie<[email protected]>

#VOLUME:挂载目录
VOLUME /temp

#ADD  将push.jar文件将拷贝到容器中,默认拷贝到根路径下
#也可以直接写成ADD push.jar /push.jar 或者 ADD push.jar /
ADD push.jar push.jar

RUN bash -c "touch /push.jar"

#EXPOSE 容器暴露端口
EXPOSE 8080

#ENTRYPOINT 应用启动命令 参数设定

ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/push.jar"]

4.1.2 pom.xml中不指定baseImage和entrypoint标签,而是使用dockerDirectory指定Dockerfile所在的路径

  
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
            
            
                com.spotify
                docker-maven-plugin
                1.1.0
                
                
                    
                        build-image
                        
                        package
                        
                            build
                        
                    
                
                
                    
                    mall-tiny/${project.artifactId}:${project.version}
                    
                    http://47.104.234.212:2375
                    
                    true
                    

                    


                    
                    ${project.basedir}/src/main/docker


                    
                    
                        
                            /
                            ${project.build.directory}
                            ${project.build.finalName}.jar
                        
                    
                
            
        
    

4.1.3 IDEA配置Docker服务

Idea集成docker_第2张图片
Idea集成docker_第3张图片
Idea集成docker_第4张图片
Idea集成docker_第5张图片

你可能感兴趣的:(笔记)