【原创实践】使用 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:

  • ✅ 环境隔离
  • ✅ 无需本地安装
  • ✅ 支持浏览器访问
  • ✅ 配置可持久化
  • ✅ 适合长期运行
相关推荐
好好沉淀1 小时前
Docker开发笔记(详解)
运维·docker·容器
禅口魔心3 小时前
Win10 + WSL2 + Docker:K510(DongshanPI-Vision)开发环境从踩坑到跑通全记录(交叉编译 + 上板运行)
docker·嵌入式开发·wsl2·k510
Ankie Wan3 小时前
cgroup(Control Group)是 Linux 内核提供的一种机制,用来“控制、限制、隔离、统计”进程对系统资源的使用。
linux·容器·cgroup·lxc
Free Tester4 小时前
基于已有容器生成Dockerfile
docker
lcx_defender4 小时前
【Docker】Docker部署运行nacos
运维·docker·容器
啦啦啦小石头5 小时前
docker添加用户权限不使用sudo
运维·docker·容器
小旭95275 小时前
Java 反射详解
java·开发语言·jvm·面试·intellij-idea
cuber膜拜5 小时前
Weaviate 简介与基本使用
数据库·python·docker·向量数据库·weaviate
xuefuhe5 小时前
Docker常用命令
docker
云草桑6 小时前
15分钟快速了解 Odoo
数据库·python·docker·postgresql·.net·odoo