-
第一步,配置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
相关推荐
码间留白3 小时前
手把手把 GitHub 推上阿里云 ECS:Actions CI/CD 全链路避坑实录(折腾好几天,到 2 分钟见绿)Vex2une3 小时前
Docker Desktop WSL2后端:2026年性能调优与避坑实战指南程序员老赵4 小时前
Docker 部署青龙面板:轻松搭建定时任务管理平台TTATTC4 小时前
为什么单会话聊天做不好复杂工程?Claude Code 创作者的并发 Worktree 与记忆闭环实践TTATTC4 小时前
状态机驱动长事务,还是 DAG 编排高并发?高可靠业务流程引擎的双核架构设计殷忆枫4 小时前
告别依赖地狱!在 Ubuntu 上用 Docker 极速部署 Home Assistant 与 MQTT,并接入 Siri 与嵌入式 C 终端千桐科技6 小时前
qModel算法模型平台功能解析:从源码到 Docker 镜像,部署能自动完成哪些工作?江湖有缘8 小时前
Docker实战 | 使用Docker部署Imagor Studio图片编辑工具Xxtaoaooo8 小时前
私人日记不想散落在多个App?我用DailyTxT把记录、搜索和图片都放进自己的NAS吴声子夜歌9 小时前
Docker入门与实战——Etcd(高可用的键值数据库)