实操配置IDEA部署项目到云服务器Docker

第一步:云服务器安装docker

参考官方文档:https://docs.docker.com/engine/install/

我使用的是Centos 服务器,所以参考文档为:https://docs.docker.com/engine/install/centos/

 

第二步:修改docker配置

docker安装成功后,修改/usr/lib/systemd/system/docker.service 文件

修改ExecStart配置项内容为 ExecStart=/usr/bin/dockerd-current -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

保存完成后执行

systemctl daemon-reload    
service docker restart

第三步:IDEA安装Docker插件

第四步:配置IDEA docker

修改localhost为服务器外网IP地址

第五步:修改项目pom配置

修改pom配置,添加docker插件

<plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>0.4.13</version>
                <executions>
                    <execution>
                        <id>build-image</id>
                        <phase>package</phase>
                        <goals>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <dockerHost>http://localhost[服务器外网IP]:2375</dockerHost>
                    <imageName>xiqin/${project.artifactId}</imageName>
                    <imageTags>
                        <imageTag>${project.version}</imageTag>
                    </imageTags>
                    <forceTags>true</forceTags>
                    <dockerDirectory>${project.basedir}</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>

第六步:编写Dockerfile

在项目根目录下创建Dockerfile文件如下:

FROM hub.c.163.com/library/java:latest
VOLUME /tmp
ADD target/demo-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

第七步:连接docker服务器,打包

点击package,即可完成本地打包并且根据Dockerfile配置往docker 所在服务器拉去对应的镜像文件并打包,初次处理时间会比较长,耐心等待打包结束

第八步:创建容器

连接好docker服务器后,IDEA中会有如下工具窗口显示

点击Images,选择刚刚创建的与项目名称对应的镜像进行创建容器,右键create container

在bind ports中配置容器与docker所在服务器端口映射

第九步:启动容器

点击docker 下的container,右键刚刚创建的容器名称,start container即可,在docker 的log窗口中可以看到与本地应用启动时一样的日志,此时即可访问远程服务器启动的应用

 

注意:在启动docker 容器的时候出现如下问题:

exec: "docker-proxy": executable file not found in $PATH

Error response from daemon: shim error: docker-runc not installed on system

此处网上搜到解决方案:

cd /usr/libexec/docker/

ln -s docker-proxy-current /usr/bin/proxy

ln -s docker-runc-current docker-runc

到此已经完成IDEA一键部署项目到云服务器docker中,记录步骤为后期使用

参考博客:http://www.javaboy.org/2019/0819/springboot-docker.html

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
项目是采用目前比较流行的SpringBoot/SpringCloud构建微服务电商项目项目叫 《果然新鲜》,实现一套串联的微服务电商项目。完全符合一线城市微服务电商的需求,对学习微服务电商架构,有非常大的帮助,该项目涵盖从微服务电商需求讨论、数据库设计、技术选型、互联网安全架构、整合SpringCloud各自组件、分布式基础设施等实现一套完整的微服务解决方案。 项目使用分布式微服务框架,涉及后台管理员服务、地址服务、物流服务、广告服务、商品服务、商品类别服务、品牌服务、订单服务 、购物车服务、首页频道服务、公告服务、留言服务、搜索服务、会员服务等。  系统架构图   SpringBoot+SpringCloud+SSM构建微服务电商项目使用SpringCloud Eureka作为注册中心,实现服务治理使用Zuul网关框架管理服务请求入口使用Ribbon实现本地负载均衡器和Feign HTTP客户端调用工具使用Hystrix服务保护框架(服务降级、隔离、熔断、限流)使用消息总线Stream RabbitMQ和 Kafka微服务API接口安全控制和单点登录系统CAS+JWT+OAuth2.0分布式基础设施构建分布式任务调度平台XXL-JOB分布式日志采集系统ELK分布式事务解决方案LCN分布式锁解决方案Zookeeper、Redis分布式配置中心(携程Apollo)高并发分布式全局ID生成(雪花算法)分布式Session框架Spring-Session分布式服务追踪与调用链Zipkin项目运营与部署环境分布式设施环境,统一采用Docker安装使用jenkins+docker+k8s实现自动部署微服务API管理ApiSwagger使用GitLab代码管理(GitHub  GitEE)统一采用第三方云数据库使用七牛云服务器对静态资源实现加速 开发环境要求JDK统一要求:JDK1.8Maven统一管理依赖 统一采用Docker环境部署编码统一采用UTF-8开发工具IDEA 或者 Eclipse 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值