docker swarm 如何管理微服务中的配置文件 docker怎么部署微服务
转载
一.idea连接虚拟的docker
1.Docker默认是不允许远程访问的,需要在配置文件配置以下
使用命令进入配置:vim /lib/systemd/system/docker.service
设置配置:ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock \
如下图:
2.重启和验证是否成功相关命令
# 重新加载配置文件 systemctl daemon-reload # 重启docker service docker restart # 查看端口是否开启 netstat -nlpt # 验证端口是否生效 curl http://192.168.200.132:2375/info |
3.Settings>>plugins 搜索docker插件进行安装如下图:(我的idea已安装过)
4.输入docker连接信息如下图,说明连接docker成功
二.部署微服务项目到docker
1.找到idea右下脚的Service按钮 出现docker图标,右键鼠标,弹出Connect,点击确认,连接成功如下图:
2.Maven pom.xml对应的打包配置如下:
自己本地maven仓库的setting.xml 需要添加如下代码:
注意:找到 <pluginGroups>标签添加<pluginGroup>com.spotify</pluginGroup>,没有 <pluginGroups>标签可直接把如下直接赋值进去
<pluginGroups>
<pluginGroup>com.spotify</pluginGroup>
</pluginGroups>
自己的微服务工程的pom.xml打包时加入如下代码:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<!--镜像名称 yang/test-docker-demo-->
<imageName>yang/${project.artifactId}</imageName>
<!--标签版本-->
<imageTags>
<imageTag>latest</imageTag>
</imageTags>
<!--基础镜像,相当于Dockerfile里的from-->
<baseImage>java</baseImage>
<!--作者信息-->
<maintainer>yang@yang.com</maintainer>
<!--入口点,project.build.finalName就是project标签下的build标签下的filename标签内容,test-docker-demo-->
<!--相当于启动容器后,会自动执行java -jar/test-docker-demo.jar-->
<entryPoint>["java", "-jar", "/${project.build.finalName}.jar"]</entryPoint>
<!--docker地址-->
<dockerHost>http://192.168.200.132:2375</dockerHost>
<!-- 这里是复制 jar 包到 docker 容器指定目录配置 -->
<resources>
<resource>
<targetPath>/</targetPath>
<!--复制的根目录,target-->
<directory>${project.build.directory}</directory>
<!--把哪个文件上传到docker,相当于Dockerfile里的add test-docker-demo.jar /-->
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>
|
3.在自己需要打包的的微服务终端下输入如下命令:
mvn clean package docker:build
打包成功后如下图:
(注意:打包时终端输入命令时一定要在所打包工程的目录下)
再次看idea连接的docker下,发现打包的微服务已成镜像如下图:
4.鼠标右键镜像创建容器,填写容器名和容器映射
再次查看容器列表,发现已生成一个eureka容器如下图:
三.浏览器输入地址访问测试idea中eureka微服务部署到docker中是否可以访问如下图:
(注意:写在最后每个人环境可能不一样,遇到报错不要慌,根据错误信息去排查,去百度就解决了,实在解决不了可以给博主留言)
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。