【原创实践】使用 Docker 部署 IntelliJ IDEA(linuxserver/intellij-idea)完整指南

在服务器或无界面 Linux 环境中使用 IntelliJ IDEA 一直是个痛点。

借助 Docker + linuxserver/intellij-idea 镜像,我们可以非常方便地通过浏览器远程使用 IDEA,实现「即开即用、环境隔离」。

本文将详细介绍如何通过一条 docker run 命令部署 IntelliJ IDEA,并解释每个参数的作用。


一、准备环境

在开始之前,请确保你的系统已经安装:

  • Docker(20.x 及以上)
  • Linux / macOS / Windows(WSL2)

验证 Docker 是否安装成功:

bash 复制代码
docker -v

二、docker run 启动 IntelliJ IDEA

下面是一条完整、推荐的启动命令:

bash 复制代码
docker run -d \
  --name=intellij-idea \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Etc/UTC \
  -p 3000:3000 \
  -p 3001:3001 \
  -v ./config:/config \
  --shm-size="4gb" \
  --restart unless-stopped \
  linuxserver/intellij-idea:42025.2.5

执行完成后,容器会在后台启动。


三、参数详解(重点)

1️⃣ 容器运行模式

bash 复制代码
-d
  • 后台运行容器(daemon 模式)
bash 复制代码
--name=intellij-idea
  • 指定容器名称,方便后续管理

2️⃣ 用户权限映射(非常重要)

bash 复制代码
-e PUID=1000
-e PGID=1000
  • 指定容器内进程使用的用户 ID 和组 ID
  • 避免挂载目录出现 权限问题
  • 1000 通常是 Linux 默认用户的 UID/GID

你可以通过以下命令查看本机 UID / GID:

bash 复制代码
id

3️⃣ 时区设置

bash 复制代码
-e TZ=Etc/UTC
  • 设置容器时区
  • 可按需修改,例如中国大陆可用:
bash 复制代码
-e TZ=Asia/Shanghai

4️⃣ 端口映射

bash 复制代码
-p 3000:3000
-p 3001:3001
  • 3000:IDEA Web UI 访问端口
  • 3001:WebSocket / 辅助服务端口

访问方式示例:

text 复制代码
http://localhost:3000/

5️⃣ 数据持久化(配置目录)

bash 复制代码
-v ./config:/config
  • 将 IDEA 的配置、插件、缓存持久化到宿主机
  • 容器删除后,配置仍然保留
  • 建议使用绝对路径,例如:
bash 复制代码
-v /data/intellij/config:/config

6️⃣ 共享内存设置(性能关键)

bash 复制代码
--shm-size="4gb"
  • 提高共享内存大小
  • 强烈建议设置 ≥ 2GB
  • 否则 IDEA 可能出现卡顿、崩溃、白屏等问题

7️⃣ 自动重启策略

bash 复制代码
--restart unless-stopped
  • Docker 或服务器重启后自动启动
  • 手动 docker stop 时不会再自动拉起

8️⃣ 使用的镜像版本

bash 复制代码
linuxserver/intellij-idea:42025.2.5
  • 来自 linuxserver.io 官方维护
  • 指定版本号,避免 latest 带来的不确定性
  • 可按需替换为其他版本

四、访问 IntelliJ IDEA

启动完成后,浏览器访问:

text 复制代码
http://<服务器IP>:3000

首次进入时:

  • 会加载 Web 桌面
  • 可进行 IntelliJ IDEA 初始化
  • 支持安装插件、登录 JetBrains 账号

五、常用 Docker 管理命令

查看容器状态

bash 复制代码
docker ps

查看日志

bash 复制代码
docker logs -f intellij-idea

停止 / 启动容器

bash 复制代码
docker stop intellij-idea
docker start intellij-idea

删除容器(不删除配置)

bash 复制代码
docker rm intellij-idea

六、适用场景

✔ 远程服务器开发

✔ 云 IDE / 内网开发环境

✔ 多人共享开发主机

✔ 不想在本机安装 IDEA


七、总结

通过 Docker 部署 IntelliJ IDEA:

  • ✅ 环境隔离
  • ✅ 无需本地安装
  • ✅ 支持浏览器访问
  • ✅ 配置可持久化
  • ✅ 适合长期运行
相关推荐
Sagittarius_A*5 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
球king6 小时前
CC GUI 插件:在 IDEA 中使用 CodeX
java·ide·intellij-idea
名字还没想好☜8 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
花和满楼9 小时前
K8s 1.36 ImageVolume GA:OCI 镜像不再只能跑容器
java·容器·kubernetes
hj28625111 小时前
Docker 核心知识点整理(网络 + Dockerfile + 原理 + 命令)
网络·docker·容器
梦想的颜色18 小时前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理
万里侯1 天前
GitOps 漂移检测:集群里改了配置,Git 还以为一切正常
微服务·容器·k8s
极客先躯1 天前
高级java每日一道面试题-2026年03月30日-实战篇[Docker]-如何监控容器的网络流量?
java·运维·docker·容器·prometheus·高级面试
Waay1 天前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器
H_HX1261 天前
IDEA的下载和安装
java·intellij-idea·idea