当前位置: 首页 > news >正文

Docker部署JumpServer堡垒机

引言

  • JumpServer是一款广受欢迎的开源堡垒机,设计用于帮助企业更安全地管控和登录各种类型的IT资产。它遵循4A规范(身份认证、账号管理、授权控制、安全审计),提供了一套专业的运维安全审计解决方案。
环境准备
  • 硬件要求: 2核 4G 内存起步,10GB+ 磁盘空间
  • 软件依赖:Docker Engine 20.10+、Docker Compose 2.0+
  • 操作系统:支持Linux发行版(Ubuntu/CentOS等)
部署流程
  • 创建存储目录
sudo mkdir -p /home/jump /home/jump/mariadb /home/jump/redis/conf /home/jump/jump /home/jump/jump/core/data /home/jump/jump/koko/data /home/jump/jump/lion/data /home/jump/jump/kael/data /home/jump/jump/chen/data /home/jump/jump/web/log
  • 创建Redis配置文件
sudo cat >> /home/jump/redis/conf/redis.conf <<EOF bind 0.0.0.0 maxmemory-policy allkeys-lru requirepass handsome EOF
  • 创建Redis容器
docker run -itd --name jumpserver_redis --restart=always -p 6379:6379 -v /home/jump/redis/conf:/etc/redis -v /home/jump/redis/data:/data docker.m.daocloud.io/redis:7.4.2 redis-server /etc/redis/redis.conf

  • 创建MariaDB数据库服务
docker run -itd --name jumpserver_mariadb --restart=always -e MYSQL_ROOT_PASSWORD=handsome -p 3306:3306 -v /home/jump/mariadb:/var/lib/mysql docker.m.daocloud.io/mariadb:11.7.2

  • 登录数据库,创建用户密码
[root@ubuntu]# docker exec -it jumpserver_mariadb bash root@bf7763b6d459:/# mariadb -u root -phandsome # 执行以下SQL CREATE DATABASE jumpserver DEFAULT CHARACTER SET utf8; CREATE USER 'jumpserver'@'%' IDENTIFIED BY 'handsome'; GRANT ALL PRIVILEGES ON jumpserver.* TO 'jumpserver'@'%'; FLUSH PRIVILEGES;

  • 创建JumpServer服务
docker run -itd --name jms_all --restart=always \ -p 80:80 \ -p 2222:2222 \ -p 30000-30100:30000-30100 \ -e SECRET_KEY=4kGNxyAucTuXdYKehaXavPaA5zat224PEcdovfxax2TABP5XNJ \ -e BOOTSTRAP_TOKEN=ch4c8wTsh7dhKyd513jAvNyU \ -e LOG_LEVEL=ERROR \ -e DB_ENGINE=mysql \ -e DB_HOST=192.168.1.19 \ -e DB_PORT=3306 \ -e DB_USER=jumpserver \ -e DB_PASSWORD=handsome \ -e DB_NAME=jumpserver \ -e REDIS_HOST=192.168.1.19 \ -e REDIS_PORT=6379 \ -e REDIS_PASSWORD=handsome \ --privileged=true \ -v /home/jump/jump/core/data:/opt/jumpserver/data \ -v /home/jump/jump/koko/data:/opt/koko/data \ -v /home/jump/jump/lion/data:/opt/lion/data \ -v /home/jump/jump/kael/data:/opt/kael/data \ -v /home/jump/jump/chen/data:/opt/chen/data \ -v /home/jump/jump/web/log:/var/log/nginx \ docker.xuanyuan.me/jumpserver/jms_all:v4.10.12
  • docker加速

Docker加速列表11月可用

镜像加速地址

是否正常使用

https://dockercf.jsdelivr.fyi

正常

https://docker.jsdelivr.fyi

正常

https://docker.1panel.live

正常

https://docker.zhai.cm

正常

https://a.ussh.net

正常

https://docker.sunzishaokao.com

正常

https://docker.xuanyuan.me

正常

https://lispy.org

正常

https://docker.yomansunter.com

正常

https://docker-mirror.aigc2d.com

正常

https://666860.xyz

正常

https://docker-0.unsee.tech

正常

https://docker.hlmirror.com

正常

https://dockerpull.pw

正常

https://hub3.nat.tf

正常

https://hub.amingg.com

正常

https://cr.laoyou.ip-ddns.com

正常

https://docker.amingg.com

正常

https://hub.1panel.dev

正常

https://docker-registry.nmqu.com

正常

https://docker.367231.xyz

正常

  • 查看服务状态
[root@Ubuntu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 55fe8e4b3456 docker.1panel.live/jumpserver/jms_all:v4.10.12 "./entrypoint.sh" 32 minutes ago Up 32 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:2222->2222/tcp, :::2222->2222/tcp, 0.0.0.0:30000-30100->30000-30100/tcp, :::30000-30100->30000-30100/tcp jms_all 0f7761b66734 docker.m.daocloud.io/mariadb:11.7.2 "docker-entrypoint.s…" 39 minutes ago Up 39 minutes 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp jumpserver_mariadb b8727c27659 docker.m.daocloud.io/redis:7.4.2 "docker-entrypoint.s…" 40 minutes ago Up 40 minutes 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp
  • 登录JumpServer系统
地址:https://192.168.1.19 账户:admin 密码:ChangeMe
安全加固
  • 修改默认Nginx端口
  • 启用HTTPS证书
  • 配置防火墙规则
  • 设置定期备份策略
常见问题排查
  • 容器启动失败:检查日志docker-compose logs
  • Web访问异常:验证端口冲突和防火墙
  • 性能优化:调整MySQL和Redis参数
进阶功能
  • 横向扩展:分离核心组件(Core/Koko/Luna等)
  • 高可用部署:数据库集群+负载均衡
  • 版本升级路径说明
结语
  • 总结Docker化部署的核心价值
  • 推荐后续学习方向(Kubernetes集成、二次开发)
http://www.cnnetsun.cn/news/104706.html

相关文章:

  • 35岁不是程序员的终点,而是新起点:大龄程序员如何再次进入大厂?
  • BiliPlus进阶指南:解锁B站深度体验的全新方式
  • 37、Linux 网络服务管理全解析
  • 非晶磁芯:国产化“市占率”突围战背后的中国力量|深圳金鑫磁材
  • 荒原之梦考研数学:考研报名人数连续两年下降,还要考研吗?
  • 32、深入了解 Linux 系统安全防护
  • 3分钟学会李跳跳自定义规则:彻底告别手机弹窗的终极指南
  • 免费API合集:为您的项目打开无限可能
  • Vercel AI SDK与Docker集成避坑指南:那些官方文档不会告诉你的秘密
  • 为什么现在应届大学生都热衷从事IT互联网行业?
  • Vue + Element UI :从零开发号码标记查询系统
  • Minecraft Bedrock启动器终极配置指南:从新手到高手的完整解决方案
  • 前端数据安全保护方案:从水印技术到全方位防护体系
  • Docker MCP 网关插件开发指南(90%开发者忽略的核心原理)
  • FastReport开源版:快速构建.NET报表系统的完整指南
  • HeidiSQL数据库管理工具:从零开始的完整安装与使用指南
  • MATLAB与XFoil翼型分析:终极集成指南
  • EmotiVoice语音合成在新闻播报自动化中的效率提升
  • 浏览器原生Python编程革命:JupyterLite深度解析与应用指南
  • Vue Query Builder 终极指南:快速构建可视化查询界面
  • 从零构建高可用Agent服务:Docker备份恢复的7步黄金流程
  • 网站域名没有被百度收录
  • echarts给饼图以及折线图悬浮提示框添加单位
  • 从文本到情感语音:EmotiVoice如何重塑语音合成新标准?
  • GEO对决传统SEO:AI搜索时代,品牌如何赢得“心智推荐”
  • 【专家级排错手册】:基于Docker Compose的Agent服务日志采集失败的7种场景与应对方案
  • 极简主义知识管理新体验:Obsidian Minimal主题完全使用指南
  • 如何在gem5-gpu上实现全系统仿真模式 full-system mode
  • 兼容为基,革新为核 —— 金仓数据库重塑企业数据库运维新体验
  • YOLOv12架构革命:通过UniRepLynne主干网络实现特征提取能力的代际飞跃**