idea中安装docker插件连接docker server
2020-08-25 18:42
1191 查看
1. 前言
微服务项目原本采用的jar包的方式部署,考虑到后面会随着业务量增大,某些服务会复制多份,采用docker实现部署会更加方便和快捷;
2.安装环境
- 安装了docker的服务器,且支持远程连接
- idea开发环境
- springboot或者springcloud项目
file——> setting——>plugins——>marketplace——>docker
安装好重启idea后
file——> setting——>docker——>新增一个连接——>添加docker服务器配置
显示Connection successful 则连接成功,如果连接不成功,检查docker server是否是running状态,或者docker是否开启了远程连接;
配置成功后打开连接,会显示出当前docker server上的containers和images;
如何将springboot项目打包成docker能用的容器
pom.xml文件中加入docker的打包方式
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <!--加入下面两项配置--> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> <configuration> <includeSystemScope>true</includeSystemScope> </configuration> </plugin> <!--使用docker-maven-plugin插件--> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <!--将插件绑定在某个phase执行--> <executions> <execution> <id>build-image</id> <!--将插件绑定在package这个phase上。也就是说,用户只需执行mvn package ,就会自动执行mvn docker:build--> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> <configuration> <!--指定生成的镜像名--> <imageName>svc/${project.artifactId}</imageName> <!--指定标签--> <imageTags> <imageTag>latest</imageTag> </imageTags> <!-- 指定 Dockerfile 路径--> <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory> <!--指定远程 docker api地址--> <dockerHost>http://192.168.226.128:2375</dockerHost> <!-- 这里是复制 jar 包到 docker 容器指定目录配置 --> <resources> <resource> <targetPath>/</targetPath> <!--jar 包所在的路径 此处配置的 即对应 target 目录--> <directory>${project.build.directory}</directory> <!-- 需要包含的 jar包 ,这里对应的是 Dockerfile中添加的文件名 --> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin>
在src/main下面新建一个文件夹docker,并且新建一个docker配置的文件DockerFile
# 基于哪个镜像 FROM java:8 # 将本地文件夹挂载到当前容器 VOLUME /tmp # 拷贝文件到容器,svc_user-1.0-SNAPSHOT.jar这里是maven打包后的名字 ADD svc_user-1.0-SNAPSHOT.jar app.jar RUN bash -c 'touch /app.jar' # 配置容器启动后执行的命令 #ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] ENTRYPOINT ["java","-jar","/app.jar"]
至此,使用maven的mvn clean 和mvn的clean就可以打包并自动执行mvn docker:build,将镜像上传到docker server
右键新生成的images,new container弹窗填写container name,端口的映射,可能还需要填写Run options
Docker网络模式 | 配置 | 说明 |
---|---|---|
host模式 | –net=host | 容器和宿主机共享Network namespace。 |
container模式 | –net=container:NAME_or_ID | 容器和另外一个容器共享Network namespace。 kubernetes中的pod就是多个容器共享一个Network namespace。 |
none模式 | –net=none | 容器有独立的Network namespace,但并没有对其进行任何网络设置,如分配veth pair 和网桥连接,配置IP等。 |
bridge模式 | –net=bridge | (默认为该模式) |
具体大家根据说明进行调整
然后,start container就行了
后一会儿就发现服务部署好了,并且启动了
3.总结
需要注意的是端口的映射和启动参数 –net=host相关的配置,然后就可以更加快捷地利用idea自带的docker插件快乐玩耍了!!!
相关文章推荐
- idea安装插件plugin(主要针对网络连接不上的情况)
- IDEA 安装docker插件,发布java应用
- 关于在Centos7 Docker中安装mysql,Navicat连接所遇到的问题
- Pycharm 安装 idea VIM插件的图文教程详解
- 采用离线连接方式安装Eclipse插件M2Eclipse
- IDEA 安装mybatis 插件 可以通过mapper定位到xml
- idea翻译插件Translation的安装_快捷键设置_小技巧_防遗忘
- IDEA连接Docker实现一键项目部署到Docker里面
- 云服务器上docker安装mysql镜像并进行远程连接(必成功,其他网上远程连接不上的解决方案真的是花里胡哨)
- MySQL Server安装心得-那些年我所踩过的坑:下载失败;navicat连接不上;找不到mysql服务;密码输入报错
- ubuntu14.04 server 安装docker
- docker安装rocketmq遇到的坑(外部无法连接)
- mysql安装卡到连接服务器starting server (Failed to connect to MySQL Server 8.0.11 after 10 attempts.)
- IDEA里如何安装Python插件打造开发环境(图文详解)
- phpStudy-FTP_Server插件安装使用教程
- 服务器安装Dolphindb数据库、Dolphindb Server启动、GUI连接
- 从零开始配置Ubuntu Server 14.04 图形界面、Caffe安装及远程连接
- 不安装Oracle客户端,透过PL/SQL Developer连接Server DB
- IDEA 安装erlang插件
- Eclipse中安装支持tfs(team foundation server)的插件team explorer everywhere 2010(一)