码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 新版IDEA内置Docker插件不支持远程Build镜像的环境集成


    IDEA 2024 内置Docker插件不支持远程Build镜像的环境集成

    • 背景
    • 解决方案
      • Remote Docker 远程访问TCP开启
        • 编辑docker.server文件
        • 修改添加配置
      • IDEA 添加Docker远程访问
        • idea的settings如图添加即可
      • 配置Docker build镜像本地环境
        • 创建.docker文件夹
        • 配置idea
      • 打完收工 - - 可以正常build
    • 总结

    背景

    idea 2023以前的版本,内置的docker集成本身是支持Remote Docker进行Build镜像的,但是在 2024版本以后,内置docker在配置远程TCP访问docker后,不在支持Build 镜像的操作,仅仅支持container的管理。这是因为docker在build镜像的时候,需要先整理上下文,2023以前的版本会将这个操作交给Remote Docker进行操作,但是很多用户向Jetbrains抱怨性能太差,速度太慢,所以2024版本以后,Jetbrains做了改动,将上下文的准备工作放在了本地,整体上传给Remote Docker,这就需要你本地有docker engine和docker compose的环境,同时需要部署docker-buildx. 这些操作对Idea来说,可能过于繁重,所以2024版本以后得idea不在支持Remote Docker的build操作,但是我们可以自己解决,也很简单。

    解决方案

    Remote Docker 远程访问TCP开启

    编辑docker.server文件

    vim /usr/lib/systemd/system/docker.service
    

    修改添加配置

    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock
    

    如图
    在这里插入图片描述

    IDEA 添加Docker远程访问

    idea的settings如图添加即可

    在这里插入图片描述
    这个时候进行本地远程构建会失败

    配置Docker build镜像本地环境

    创建.docker文件夹

    1. 在用户目录下创建 .docker 文件夹(不要忘记docker前面的“.”)
    2. 在 .docker 目录下面创建cli-plugins和bin两个文件夹
    3. 在此链接选择自己需要的docker版本下载
    4. 解压下载的压缩包,将解压后的docker目录里面的docker文件移动到 .docker 目录的bin下面
    5. 在链接中找到Manual download, 进入到docker-buildx插件下载页面,选择适合自己的版本
    6. 将下载的文件按照如下方式命名,并移动到.docker/cli-plugins下
    OSBinary nameDestination folder
    Linuxdocker-buildx$HOME/.docker/cli-plugins
    macOSdocker-buildx$HOME/.docker/cli-plugins
    Windowsdocker-buildx.exe%USERPROFILE%.docker\cli-plugins
    1. 在链接下载docker-compose,下载完成后,将名称改成docker-compose,放到 .docker 的bin目录下面

    至此基本环境准本完成

    配置idea

    打开Idea的settings,找到Docker目录下的Tool选项,配置docker executable和docker executable,如图
    在这里插入图片描述

    打完收工 - - 可以正常build

    在这里插入图片描述

    总结

    解决新版本Jetbrains系列IDE工具内置Docker插件远程 Docker TCP连接后不在支持build镜像问题。

  • 相关阅读:
    国际结算重点知识整理
    Linux程序崩溃时的信号量(signal)说明
    《动手学深度学习 Pytorch版》 10.1 注意力提示
    使用JavaStream将List转为Map
    windows service 服务器安装 MySQL
    汇编考试题目
    电脑入门:电脑键盘每个键的作用
    弱项分析与提高举措
    python 的selenium库自动化操控浏览器最新教程
    Flutter 从源码看Getx的依赖原理
  • 原文地址:https://blog.csdn.net/p73133_55/article/details/139480489
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号