Docker部署Jumpserver堡垒机

news2025/4/6 12:30:38

Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。
Jumpserver 使用 Python / Django 进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 解决方案,交互界面美观、用户体验好。
Jumpserver 采纳分布式架构,支持多机房跨区域部署,中心节点提供 API,各机房部署登录节点,可横向扩展、无并发访问限制。
一、下载镜像安装
mysql:5.7
redis:latest
jms_all:latest

[root@my ~]# docker pull jumpserver/jms_all
[root@my ~]# docker pull mysql:5.7
[root@my ~]# docker pull redis

二、启动容器
启动mysql

[root@my ~]# docker run -d --name mysql --restart=always -e MYSQL_ROOT_PASSWORD=admin123  -p 3306:3306 -v /data/mysql/data:/var/lib/mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

配置数据库

docker exec -it mysql /bin/bash
mysql -u root -padmin123
mysql> create database jumpserver default charset 'utf8mb4';
mysql> grant all on jumpserver.* to 'jumpserver'@'%' identified by 'admin123';
mysql> flush privileges;
mysql> exit;
#exit

启动redis

docker run -d -it --name redis -p 6379:6379 -v /data/redis/data:/data --restart=always  --sysctl net.core.somaxconn=1024  redis:4.0.10 --requirepass "123456"

随机生成密钥

if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc; echo $SECRET_KEY; else echo $SECRET_KEY; fi

if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc; echo $BOOTSTRAP_TOKEN; else echo $BOOTSTRAP_TOKEN; fi

启动jumpserver

docker run -d --name jumpserver -h jumpserver --restart=always  \
    -v /data/jumpserver:/opt/jumpserver/data/media \
    -p 80:80 \
    -p 2222:2222 \
    -e SECRET_KEY=CWL1znY9BnphHHMAW3YjLuSz765J8EaRnYFRl25CYGBqDimwBu \
    -e BOOTSTRAP_TOKEN=h4o6qWnQgLyYCDmZ \
    -e DB_HOST=192.168.100.20 \
    -e DB_PORT=3306 \
    -e DB_USER=jumpserver \
    -e DB_PASSWORD="admin123" \
    -e DB_NAME=jumpserver \
    -e REDIS_HOST=192.168.100.20 \
    -e REDIS_PORT=6379 \
    -e REDIS_PASSWORD="123456" \
jumpserver/jms_all:latest 

三、容器检查

[root@my ~]# docker ps
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                                        NAMES
c323e89b6629        jumpserver/jms_all:latest   "./entrypoint.sh"        9 minutes ago       Up 9 minutes        0.0.0.0:80->80/tcp, 0.0.0.0:2222->2222/tcp   jumpserver
521483f8f57c        mysql:5.7                   "docker-entrypoint.s…"   10 minutes ago      Up 10 minutes       0.0.0.0:3306->3306/tcp, 33060/tcp            mysql
ab98869d229d        redis:latest                "docker-entrypoint.s…"   20 minutes ago      Up 20 minutes       0.0.0.0:6379->6379/tcp                       redis-jm

四、页面访问
使用192.168.100.20访问,默认账号密码:admin/admin 首次登录会提示修改密码。
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1111678.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android11修改自动允许连接到建议的WLAN网络

客户的app需要连接指定的wifi,但是会提示下面的对话框(是否允许系统连接到建议的WLAN网络?): 客户需求:不提示这个对话框自动允许。 根据字符串定位到frameworks\opt\net\wifi\service\java\com\android\server\wifi\WifiNetworkSuggestionsManager.java 中的privat…

【C++】-c++的类型转换

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …

020-第三代软件开发-日志模块

第三代软件开发-日志模块 文章目录 第三代软件开发-日志模块项目介绍日志模块日志Demo第一代日志系统第二代日志系统 关键字: Qt、 Qml、 日志、 Log、 SQLite 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Ob…

【Java基础面试三十四】、接口中可以有构造函数吗?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:接口中可以有构造函数吗…

Day3 Qt

作业 1. 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到新的界面中 如果账号和密码不…

经典算法试题(一)

文章目录 一、19头牛1、题目2、思路讲解3、代码实现4、结果 二、分钱1、题目2、思路讲解3、代码实现4、结果 三、儿子做题1、题目2、思路讲解3、代码实现4、结果 四、乐队人数1、题目2、思路讲解3、代码实现4、结果 五、靶子趣谈1、题目2、思路讲解3、代码实现4、结果 六、里程…

外骨骼机器人和人形机器人概览

前言:一点思考 外骨骼机器人和人形机器人都曾随着一些爆品的出现火热过一段时间,但总感觉当前技术条件还不成熟,真正能落地的应用场景不多。马斯克在擎天柱发布会上被问到人形机器人的落地与前景问题时并没有给出明确答案,只是用…

《Selenium 2 自动化测试实战》读书笔记

背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试 & 自动化测试的理论知识,遂拿过来学习学习。所以本文几乎没有实践内容,大多都是概念和工具的 mark,后续若有实践&am…

bulldog 靶机

bulldog 信息搜集 存活检测 详细扫描 后台网页扫描 网页信息搜集 正在开发的如果你正在读这篇文章,你很可能是Bulldog Industries的承包商。恭喜你!我是你们的新老板,组长艾伦布鲁克。CEO解雇了整个开发团队和员工。因此,我们需要迅速招到一…

JVM(Java Virtual Machine)垃圾收集算法篇

前言 本文参考《深入理解Java虚拟机》,主要介绍GC相关的算法,引用计数法、可达性分析算法、垃圾收集算法(分代收集理论,标记-清除/整理/复制) 本系列其他文章链接: JVM(Java Virtual Machine&…

视频监控/安防监控平台EasyCVR新功能——视频播放id调阅来咯

TSINGSEE青犀视频监控汇聚平台EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。平台既具备传统安防视频监控的能力&…

中小型企业云存储选型指南:要点与建议

随着信息技术的快速发展,中小型企业越来越依赖于云存储来管理和存储其日益增长的数据。选择适合自己企业的云存储解决方案是确保数据安全、提高工作效率的关键。 选型注意点: 选择适合自己企业的云存储方案 在选择适合自己企业的云存储方案时&#xff…

日志回滚工作原理剖析及在文件系统的作用

日志回滚原理 当涉及到崩溃恢复和一致性保护时,日志回滚是一种常见的机制。它通过记录写入操作到一个事务日志中,而不是直接应用到文件系统,以保护文件系统的一致性。下面是日志回滚的一般工作原理: 日志记录:在进行写…

【COMP305 LEC 1 2】

Part 1 Artificial Neural Networks(ANN) Topic 1 Historical/Biological Introduction 1. Biological Excitability (a. Virtually all living cells maintain an electrical potential difference between their interiors and the environment (exteriors) . 内部和外…

1812_参考spacemacs的文档拆解ivy layer的组成

全部学习汇总: GreyZhang/editors_skills: Summary for some common editor skills I used. (github.com) 升级了spacemacs的配置,之后重新翻了一下spacemacs的文档。看到了这里面的一个核心的结构layer。这样,结合文档并且找出一个layer来看…

【多线程】线程安全问题和解决方案

我们来看下面这一段代码 public class demo {public static void main(String[] args) throws InterruptedException {Cou count new Cou();Thread t1 new Thread(() -> {for (int i 0; i < 10000; i) {count.add();}});Thread t2 new Thread(() -> {for (int i …

王道计算机考研 操作系统学习笔记篇章二: 进程管理

目录 进程与线程 进程的概念 概念 进程的组成 PCB 程序段、数据段 进程的特征 总结 进程的状态与转换 进程的状态 创建态、就绪态 运行态 阻塞态 终止态 进程的转换 进程的组织 链接方式 索引方式 总结 进程控制 什么是进程控制 如何实现进程控制 进程控制相关的原…

Opencv之RANSAC算法用于直线拟合及特征点集匹配详解

Opencv之RANSAC算法用于直线拟合及特征点集匹配详解 讲述Ransac拟合与最小二乘在曲线拟合上的优缺点 讲述在进行特征点匹配时&#xff0c;最近邻匹配与Ransac匹配的不同之处 另外&#xff0c;Ransac也被用于椭圆拟合、变换矩阵求解等 1. 直线拟合 1.1 原理 RANSAC(RANdom …

两分钟搞懂UiAutomator自动化测试框架

1. UiAutomator简介 UiAutomator是谷歌在Android4.1版本发布时推出的一款用Java编写的UI测试框架&#xff0c;基于Accessibility服务。其最大的特点就是可以跨进程操作&#xff0c;可以使用UiAutomator框架提供的一些方便的API来对安卓应用进行一系列的自动化测试操作&#xf…

Linux程序调试器——gdb的使用

gdb的概述 GDB 全称“GNU symbolic debugger”&#xff0c;从名称上不难看出&#xff0c;它诞生于 GNU 计划&#xff08;同时诞生的还有 GCC、Emacs 等&#xff09;&#xff0c;是 Linux 下常用的程序调试器。发展至今&#xff0c;GDB 已经迭代了诸多个版本&#xff0c;当下的…