-
第一步,配置Docker启用远程tcp端口,并重新启动
假设已经安装了Docker,编辑Docker启动服务脚本
sh[tobbco@localhost ~]$ sudo vim /usr/lib/systemd/system/docker.service在
ExecStart配置末尾增加-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock,如下:bash[tobbco@localhost ~]$ ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375重新加载配置
sh[tobbco@localhost ~]$ sudo systemctl daemon-reload重新启动Docker
sh[tobbco@localhost ~]$ sudo systemctl restart docker查看配置是否生效
sh[tobbco@localhost ~]$ ps -ef | grep docker root 3682 1 0 11:10 ? 00:00:14 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375出现刚刚的配置,证明生效,反之重新执行步骤。
-
第二步,IDEA Docker插件安装及配置
IDEA 安装Docker插件,Restart IDEA。
找到IDEA Settring设置项,搜索Docker,目录在
Build,Execution,Deployment下。一般默认有一个Docker配置,没有点击
+号创建一个。名称随便起,例如
Docker-linux。选择TCP socket,Engine API URL:tcp://
your remote server ip:2375,我这里是连接的云服务器,本地的选择第一个Docker for Windows或Mac,取决于你的系统。等待连接,出现Connection Successful,证明成功,如Time out,则多试几次。
-
第三部,构建Docker镜像并远程部署
Dockerfile文件内容
dockerfile# 基础镜像 FROM openjdk:8-jre-slim # 作者 LABEL authors="tobacco" # 配置 ENV PARAMS="" # 时区 ENV TZ=PRC RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 添加应用 ADD /springboot-demo/target/springboot-demo.jar /springboot-demo.jar # 执行 ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /springboot-demo.jar $PARAMS"]pom.xml配置Docker镜像构建插件
xml<!--该插件主要用途:构建Docker镜像 --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.0.0</version> <executions> <execution> <id>build-image</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> </plugin>Docker Configuration
打开Run/Debug Configurations,点击
+新建,搜索Dockerfile。名称设置为springboot-demo便于明确构建的镜像是什么。
Server选择前面IDEA Docker插件配置的名称。
Build项中Dockerfile选择之前创建的Dockerfile,Image tag 给镜像设置标签,例如springboot-demo:1.0。
Run项中Container name:起一个容器运行的名称,最好与项目名称保持一致,便于区分,Bind ports:点击右侧文件夹配置宿主机端口和容器端口的映射,例如:8080:8080。
点击apply应用后,点击run,只要文件没有配置错,那么没有问题。
-
查看镜像构建及部署日志
回到IDEA Services视图栏(或者使用
ALT+F8调出)。查看Docker-linux下有一个名称为springboot-demo的镜像,右侧有Build Log,构建镜像成功后,会自动发送到云服务器。
之后查看Build Log右侧的Log,为项目启动日志。
IDEA 部署服务到 Docker 容器
它山之石,可以攻玉2023-11-10 12:01
相关推荐
j***294825 分钟前
Redis 设置密码(配置文件、docker容器、命令行3种场景)8***84822 小时前
macOs安装docker且在docker上部署nginx+phpA***F1574 小时前
从零到上线:Node.js 项目的完整部署流程(包含 Docker 和 CICD)debug骑士4 小时前
智能物流背景下基于 Python 构建高效仓储与配送调度系统的架构设计与工程实践经验分享0***R5154 小时前
后端日志系统i***51266 小时前
springboot整合libreoffice(两种方式,使用本地和远程的libreoffice);docker中同时部署应用和libreofficeBrown.alexis6 小时前
docker安装redis7Java陈序员7 小时前
精致简约!一款优雅的开源云盘系统!青靴7 小时前
从单机到集群:Docker 数据卷在高可用日志平台中的实战指南k***81727 小时前
IDEA搭建SpringBoot,MyBatis,Mysql工程项目