找回密码
 注册
查看: 409|回复: 0

jumpserver迁移方案

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2023-6-30 12:55:29 | 显示全部楼层 |阅读模式
迁移文档⚓︎6 @/ C: ~8 A8 B* u
注意6 X* |, o5 ], q$ Y0 |2 K$ i
5 D- r/ A: y/ m
升级及迁移请保持 SECRET_KEY 与旧版本一致,否则会导致数据库加密数据无法解密。
9 r. K4 ?/ L& m* ?' J' E. ?1 迁移说明⚓︎
3 _; Z) R( ^  o4 G: av2.6 版本升级说明, @' A- [$ b$ z4 M3 N+ k( `, k

% ?7 f' w8 X: I$ s7 A  _) K统一企业版本与开源版本安装方式,社区版可以无缝切换到企业版。
* g0 ?; @2 ?0 U3 M今后只会维护此安装方式,其他安装方式不再提供技术支持。
2 V+ L" W( U! `- L& n安装完成后配置文件在 /opt/jumpserver/config/config.txt
" J6 |, N1 y, g2 迁移步骤⚓︎1 S- b; y2 h" N$ E: T, o& R
2.1 数据库备份⚓︎
' i8 l# X" L. S在 jumpserver/config.yml 文件中获取数据库信息如下:1 Y" |, ~* P/ L* A3 z# P

# R( v' Q0 A. Q# D- RDB_HOST: 127.0.0.1   # 数据库服务器 IP; W  y7 v6 d' W2 C
DB_PORT: 3306        # 数据库服务器 端口% g/ |* `, T% k2 U7 V
DB_USER: jumpserver  # 连接数据库的用户
! }/ w) y% y5 `, a9 N( W+ c1 R( u/ C# }0 bDB_PASSWORD: ******  # 连接数据库用户的密码
" C5 t$ [" @) e, {7 [DB_NAME: jumpserver  # JumpServer 使用的数据库/ S$ ^; b3 T. i4 x# R% }! b: G
# mysqldump -h<DB_HOST> -P<DB_PORT> -u<DB_USER> -p<DB_PASSWORD> <DB_NAME> > /opt/<DB_NAME>.sql
" D3 _9 p# D( m. Y4 p# h选择与自己环境部署方式对应的数据库备份方式:. M4 d+ \7 k: r7 F6 T1 E

- R' W' c- r0 s$ N" Pinstaller 部署2 G$ [" c) Y" V: u
源码部署. a/ Z, w6 b5 _
组件容器化部署
* r$ c$ y$ K. g6 B  {2 B0 U6 Dsetuptools 脚本部署
0 b8 T( a3 I, `docker 部署
9 j$ F8 _/ }) o1 P- L" ^- \/ M9 B. Gdocker-compose 部署- }( P+ i$ p, p/ T
5 \/ ~+ ~9 c: I0 ]7 [% b9 p
docker cp jms_all:/opt/jumpserver /opt/jumpserver_bak/ k  P- J, v5 `# ^, g

- \) z& ]6 L8 Z# 记录 SECRET_KEY 和 BOOTSTRAP_TOKEN% ~$ K/ W' j" n$ o2 @2 c5 U* I
docker exec -it jms_all env | egrep "SECRET_KEY|BOOTSTRAP_TOKEN"
2 c& f6 R; O$ H' z+ W% A; G9 r/ j5 }6 v2 V9 _; i( G
docker exec -it jms_all /bin/bash
' l5 M; f4 u" p7 Z+ A; F$ g  n- wmysqldump -h$DB_HOST -P$DB_PORT -u$DB_USER -p$DB_PASSWORD $DB_NAME > /opt/jumpserver.sql
* B- ?, t( t, n' f7 I  D) zexit0 ^: q$ S. ~* k$ {, b8 f) X% }/ L
( w* ^2 h% S1 N  v# j5 M- ^, t
docker cp jms_all:/opt/jumpserver.sql /opt
! \6 C' F8 f) N: i5 T, ^" mdocker stop jms_all3 z0 i' D) g0 m& u# L1 e8 t7 F

5 Q2 k: w" o. H2.2 修改数据库字符集⚓︎
1 s- q+ V$ Q/ w* Y! v! J如果你不需要或不想处理数据库字符集可以跳过此步骤, 保证迁移前后的数据库字符集一样即可。
8 i1 c1 ?0 h! e3 R$ O2 S- ?, W7 k0 q$ h' I
if grep -q 'COLLATE=utf8_bin' /opt/jumpserver.sql; then
- z. X$ H+ Q" b: D    cp /opt/jumpserver.sql /opt/jumpserver_bak.sql4 Y# D: B, f% X( h
    sed -i 's@ COLLATE=utf8_bin@@g' /opt/jumpserver.sql
4 a& C. U+ [; s. Q" V) h    sed -i 's@ COLLATE utf8_bin@@g' /opt/jumpserver.sql
  v5 A; t1 I2 W  E! ?# Relse2 a& b# e; n# S" M0 E1 R
    echo "备份数据库字符集正确";. ?; A1 m+ W5 [; i  b: }
fi! @* U( T" z0 l' K
2.3 下载 jumpserver-install⚓︎
& ^/ s4 I& c7 g1 t: S
, e: A# c# j  D- S# Ocd /opt
' S2 u2 I0 ~$ W' o9 {1 Fyum -y install wget2 M9 N( ]1 f: R
wget https://github.com/jumpserver/in ... aller-v3.4.0.tar.gz. Q; }: P6 D( t  P2 Y4 c, V/ u
tar -xf jumpserver-installer-v3.4.0.tar.gz
7 J3 R' U7 {7 Y2 V1 n2 a- fcd jumpserver-installer-v3.4.0
2 L) m5 O' s! \( A* E2.4 编辑临时配置文件⚓︎
3 H/ i0 D: e; }5 Q# [+ R% o$ D7 E; }2 K
vi config-example.txt
: G6 v/ C  h( U% e% n
( Q7 w3 |# N4 U1 O' L2 S5 G5 F# 修改下面选项, 其他保持默认. {9 b# I9 W6 [$ J. ]
### 数据持久化目录, 安装完成后请勿随意更改, 可以使用其他目录如: /data/jumpserver! E4 b& Z" ~7 r0 q
VOLUME_DIR=/opt/jumpserver# B2 m6 x; ^1 S" W% B

' ?' d& A' U3 B) y4 `, j### 注意: SECRET_KEY 与旧版本不一致, 加密的数据将无法解密
+ Q' Y. K$ L+ S& E
, x7 d7 b9 H9 k8 G5 P! N) O# Core 配置5 q4 n8 ]: R+ ?; J9 i# J
### 启动后不能再修改,否则密码等等信息无法解密
8 r1 \4 M! c# `. uSECRET_KEY=                           # 从旧版本的配置文件获取后填入 (*)
& k8 Y4 [: }8 M% ~! t& WBOOTSTRAP_TOKEN=                      # 从旧版本的配置文件获取后填入 (*)
! g6 m+ J; m) K4 p; w% p1 ?LOG_LEVEL=ERROR
8 f+ S; [- O2 K: G& p# SESSION_COOKIE_AGE=86400/ `* ]; O1 [9 ]$ u* v
SESSION_EXPIRE_AT_BROWSER_CLOSE=True  # 关闭浏览器后 session 过期4 ~, }  E- [$ x, h6 S2 G
2.5 开始部署 JumpServer⚓︎
4 b9 y! U. M/ M选择与自己数据库环境对应的部署方式。# Y- E5 X$ u7 _6 X
! d; S; i( E) C! S+ A
使用新的内置数据库3 P/ F) V2 k" X
使用新的外置数据库( q. K! Z4 }+ t& ~' y, D
使用旧的外置数据库
! M( J0 u. s" g! |0 |; a  w" P+ Z6 u2 [/ D3 a! T& M
./jmsctl.sh install
% J7 r4 P: l0 q4 F' K. J( \: i# C8 H1 C
       ██╗██╗   ██╗███╗   ███╗██████╗ ███████╗███████╗██████╗ ██╗   ██╗███████╗██████╗7 j( i3 j- f1 ?7 ], [( ^( V
       ██║██║   ██║████╗ ████║██╔══██╗██╔════╝██╔════╝██╔══██╗██║   ██║██╔════╝██╔══██╗) f) B4 C% _% N. C
       ██║██║   ██║██╔████╔██║██████╔╝███████╗█████╗  ██████╔╝██║   ██║█████╗  ██████╔╝% C( `8 ~5 Q, L
  ██   ██║██║   ██║██║╚██╔╝██║██╔═══╝ ╚════██║██╔══╝  ██╔══██╗╚██╗ ██╔╝██╔══╝  ██╔══██╗+ P/ u; Y- _. s! O
  ╚█████╔╝╚██████╔╝██║ ╚═╝ ██║██║     ███████║███████╗██║  ██║ ╚████╔╝ ███████╗██║  ██║9 {/ P; o1 \2 I1 _7 j
   ╚════╝  ╚═════╝ ╚═╝     ╚═╝╚═╝     ╚══════╝╚══════╝╚═╝  ╚═╝  ╚═══╝  ╚══════╝╚═╝  ╚═╝0 Y$ x* m% Q* ?: Z
! U3 H- L( `+ _4 A5 W
                                                                     Version:  v3.4.0/ F) e  Z) ]! c+ x  A; F5 D3 i
; A* {4 V0 s6 t: c" _8 O+ R

7 U) S" O$ @5 \. k) v$ g1. 检查配置文件1 s) K7 a- A! I9 ?9 r7 }% S
配置文件位置: /opt/jumpserver/config
& {( e! v- J9 E. r1 D4 q& {: S) i/opt/jumpserver/config/config.txt  [ √ ]4 L, @' Z, P/ a' v  L9 P
/opt/jumpserver/config/nginx/lb_rdp_server.conf  [ √ ]
( m& D# N% s! F5 I/opt/jumpserver/config/nginx/lb_ssh_server.conf  [ √ ]
7 p8 t, u. N6 H. s/opt/jumpserver/config/nginx/cert/server.crt  [ √ ]& j/ Y* N8 o* S& }- a. A7 v' \
/opt/jumpserver/config/nginx/cert/server.key  [ √ ]
$ |. ]5 q" M" x7 Y完成
# L, V6 c. X; c9 i( a$ C( m' j  W9 Q9 Q* ^
2. 备份配置文件3 ~6 a0 J6 U$ G* S" ~' O
备份至 /opt/jumpserver/config/backup/config.txt.2021-07-15_22-26-13
1 a7 r  D& e! \( W完成
! w' T+ p3 M4 x: h. @. ^( i1 A! z$ u0 d- B; P
>>> 安装配置 Docker  S; ~: X2 k- h% {' R& [
1. 安装 Docker( `1 l/ _+ ^( m! Z0 `  g9 F& _. k
开始下载 Docker 程序 ...
6 }4 V; d+ _0 a' j( d* X开始下载 Docker Compose 程序 ...
; n+ r7 }# u3 ^: J- K  b完成
) R- ^% V& K* S$ }$ R$ d* S/ c+ X
' X, U( Q5 A# I7 n  E1 t7 T& _% s9 d2. 配置 Docker
$ m* l: c+ K! T9 f7 _是否需要自定义 docker 存储目录, 默认将使用目录 /var/lib/docker? (y/n)  (默认为 n): n
. \6 }) e  D# Y5 K& S# J完成7 }$ S/ D; C1 ?
) i  }" Y+ R  z2 l$ u# a" R
3. 启动 Docker  n; j4 i: G; q
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /etc/systemd/system/docker.service.6 i, j5 V& j6 x. k% ~, c
完成1 G7 y- H2 r- k2 C& j2 I  N# E4 D' G& l
/ |3 @& l3 s: |
>>> 加载 Docker 镜像6 U# J# e/ D* n8 @  T3 c
Docker: Pulling from jumpserver/core:v3.4.0         [ OK ]
4 W+ a9 `8 G' {* Y) \. ^% JDocker: Pulling from jumpserver/koko:v3.4.0         [ OK ]
: ~3 g- V+ u9 j/ p, q  jDocker: Pulling from jumpserver/web:v3.4.0          [ OK ]
: u2 u" Q# B8 C3 k! B. g  N/ cDocker: Pulling from jumpserver/redis:6-alpine      [ OK ]
9 d& Z7 T+ \7 l; m' ~2 Z- DDocker: Pulling from jumpserver/mysql:5             [ OK ], J; O% Z5 K) |
Docker: Pulling from jumpserver/lion:v3.4.0         [ OK ]* N: I+ a2 T) W& b; t4 R- e  F

' D. z+ a; S# W/ j>>> 安装配置 JumpServer0 Z0 C9 m0 N) U4 ~. h4 r
1. 配置网络
" M: M! N- H& ]* d9 ~' s2 `是否需要支持 IPv6? (y/n)  (默认为 n): n" W4 w/ ^5 w6 p' l, ?& x9 L  V' [3 d
完成  R2 _1 L3 \6 a( b1 X) Z% y
" ?! m$ m- U, V) N; e' Y4 c
2. 配置加密密钥
! i4 m4 o+ M( v& l6 V% USECRETE_KEY:     YTE2YTVkMTMtMGE3MS00YzI5LWFlOWEtMTc2OWJlMmIyMDE2( b& G' |" L( Y5 K' U( o  C
BOOTSTRAP_TOKEN: YTE2YTVkMTMtMGE3- n& k2 T, J* t& V$ ?. l
完成
% r: I! Y* ~. C* l: _- k! N: `" E. Y3 ?* ?5 ?. i% Z* H, g
3. 配置持久化目录
5 i1 X% d7 E4 _4 |4 u" e是否需要自定义持久化存储, 默认将使用目录 /opt/jumpserver? (y/n)  (默认为 n): n
( X3 w" d$ p  N: d2 _: C3 M完成
  N. }* ?. |) u
) {2 K$ ^8 s) @( T4. 配置 MySQL
$ y% `8 M! |' \是否使用外部 MySQL? (y/n)  (默认为 n): n
; N) S6 u: p$ V完成- u9 t5 C% \, ^' y3 I7 |

6 _( \( c, w3 i* ~  i5. 配置 Redis2 Y' _- F! L# `3 O5 s) R4 Y
是否使用外部 Redis? (y/n)  (默认为 n): n3 V7 W4 f1 w6 {# d& V; k: a
完成! ]6 D, i( f5 C

: T% C) Y) l. s6. 配置对外端口, t* Q" X- l6 b1 v7 ?. p) }. L- N
是否需要配置 JumpServer 对外访问端口? (y/n)  (默认为 n): n
: A- H$ X# M9 U完成$ n/ J, g( X* r/ s8 y$ i

0 C, L5 m0 p; e7. 初始化数据库
! a  c) h4 Z( R) O) eCreating network "jms_net" with driver "bridge"
3 o2 j5 d7 y9 v4 KCreating jms_mysql ... done
1 U( G8 V0 _% B/ v( gCreating jms_redis ... done- i' s: i9 V* u, r! i  N" e
2021-07-15 22:39:52 Collect static files
4 P) |' e- @. a$ v. C2021-07-15 22:39:52 Collect static files done
/ u0 N% @/ c, s/ m2021-07-15 22:39:52 Check database structure change ...
3 P; i! V9 i7 ^* ^! T2021-07-15 22:39:52 Migrate model change to database ...
5 n: L) E- ?5 c4 c, Q7 v5 M
; E3 ]8 Y, [( M: u- `475 static files copied to '/opt/jumpserver/data/static'.# G/ n9 R% ]! ?* \9 \% M( \
Operations to perform:
( m* t. C% e4 I3 _  Apply all migrations: acls, admin, applications, assets, audits, auth, authentication, captcha, common, contenttypes, django_cas_ng, django_celery_beat, jms_oidc_rp, notifications, ops, orgs, perms, sessions, settings, terminal, tickets, users
4 S$ V+ J( y' e/ t+ u+ E% WRunning migrations:: O' N6 x/ @$ W0 v0 L1 ^
  Applying contenttypes.0001_initial... OK! ^( c2 c2 z, I7 Z
  Applying contenttypes.0002_remove_content_type_name... OK
- d, k* ^5 e7 p% f6 e  {9 c% D. Z  Applying auth.0001_initial... OK
0 B3 X* ]0 f. `1 O0 e  Applying auth.0002_alter_permission_name_max_length... OK" g. o( a" J0 J/ f& s7 q
  Applying auth.0003_alter_user_email_max_length... OK
5 X8 N5 F' p/ k% }$ M  Applying auth.0004_alter_user_username_opts... OK
5 e& H6 {; C9 ?3 \$ f$ ^( y2 ]' p  Applying auth.0005_alter_user_last_login_null... OK
: F5 A7 s* ^1 l5 ~* ]  Applying auth.0006_require_contenttypes_0002... OK
3 v5 k6 f, K# m( y) ]  Applying auth.0007_alter_validators_add_error_messages... OK
  C/ J' _& v! t& q0 @5 ?  Applying auth.0008_alter_user_username_max_length... OK* b- ?7 M' q. A" I
  ...+ ?8 `6 \& I1 J5 e7 Z( P
  Applying sessions.0001_initial... OK0 s0 Y1 X1 |" |
  Applying terminal.0032_auto_20210302_1853... OK3 t+ l- Y! R# @* D
  Applying terminal.0033_auto_20210324_1008... OK
( @7 b. }' n& @/ K/ {8 m6 z  Applying terminal.0034_auto_20210406_1434... OK7 [! X2 o4 T( T' Q$ {' L& h
  Applying terminal.0035_auto_20210517_1448... OK
8 F  O; z% R  y! a3 u# g; B  Applying terminal.0036_auto_20210604_1124... OK
7 p: L' q1 p% m4 w* ?  Applying terminal.0037_auto_20210623_1748... OK# [* [! C3 ~8 \  F) h% J
  Applying tickets.0008_auto_20210311_1113... OK3 l7 x) ~% X6 g2 i! A1 G' `# G: x
  Applying tickets.0009_auto_20210426_1720... OK
4 `5 ]: t# N9 t' f, f
; v7 A6 H) X/ \$ I# C) Y" E>>> 安装完成了0 T. Z$ O0 Y8 B3 \! O" t5 ]
1. 可以使用如下命令启动, 然后访问
" D( V+ G: s, J( T& Hcd /root/jumpserver-installer-v3.4.0( T# S' c( }6 T; A. z! ]
./jmsctl.sh start, a( u  v" ~# a- D' [
  d+ f9 ?% H3 Z$ ^& I$ u! ?! a
>>> The Installation is Complete
* Z( v# J4 ?9 P1. You can use the following command to start, and then visit* R8 ^6 K1 z  D6 c: l$ Q4 f* \
cd /opt/jumpserver-offline-release-v3.4.1-amd64
5 x1 ~; R5 g' h! T! L4 t./jmsctl.sh start$ }8 c* j6 R5 D" E% {

+ {1 p4 h! a/ r' ?7 F* z2 e2. Other management commands
; ]- w% w  K1 B2 w6 J./jmsctl.sh stop
4 m- D! J+ k  `% f0 `. L./jmsctl.sh restart6 B" }0 [& L& m7 v
./jmsctl.sh backup
8 F2 @1 N5 {2 D+ z: m./jmsctl.sh upgrade/ J) N/ O& t4 C5 c9 J) F
For more commands, you can enter ./jmsctl.sh --help to understand. _6 B) h+ o( p5 S) k; Z! q( D
4 L6 |4 D1 F4 o$ w1 h" v
3. Web access9 u$ v& x/ d0 S8 ~1 c( F- p; |
http://172.24.110.119:80$ h+ [6 x& a, P& h4 g/ F; F: N
Default username: admin  Default password: admin& M( I& F1 {1 R, \: x+ \: |% @3 ^# s
6 z% Q0 s( m/ p, Q! A9 W8 }5 D
4. SSH/SFTP access& _5 p5 V  C& h% [( |
ssh -p2222 admin@172.24.110.119
) e, M& a  ]7 C  ~sftp -P2222 admin@172.24.110.119
, V: p# {- X6 h3 W  G5 C
2 G3 i( g' T" q: l* ^  D) K5. More information
2 t9 b, l- ~( c* Z1 AOfficial Website: https://www.jumpserver.org/
! ]7 d0 c* @9 |6 Y. N+ GDocumentation: https://docs.jumpserver.org/
# @$ X" w8 e* @# w/ J8 L- y; R8 @. U% y

8 B. M$ i( P# Y8 L( P: H[root@cusc_fortress jumpserver-offline-release-v3.4.1-amd64]# ls! k! G* m; {$ `
cn-quick_start.sh  compose  config-example.txt  config_init  jmsctl.sh  LICENSE  locale  quick_start.sh  README.md  scripts  static.env  utils
/ V0 N3 ?/ P. ^[root@cusc_fortress jumpserver-offline-release-v3.4.1-amd64]# ./jmsctl.sh start% p; e3 Y; B' w  H- m' k3 F
[+] Running 10/10
2 g5 n/ r% d) b" y7 [  @1 r) A ✔ Container jms_redis   Healthy                                                                                                                   0.9s
3 q+ D8 M# u7 j ✔ Container jms_mysql   Healthy                                                                                                                   0.9s
. w/ D5 D( W+ c  F3 e4 j ✔ Container jms_core    Healthy                                                                                                                  38.8s
- Y6 ^  |. V; Y) r' G ✔ Container jms_omnidb  Started                                                                                                                  40.3s * V& F& K" h2 C. n( F& J, L0 m7 l
✔ Container jms_web     Started                                                                                                                  40.5s
  j) u( r: u& D# A ✔ Container jms_razor   Started                                                                                                                  44.6s # C9 \4 f" A. }/ h9 s) x# [. \
✔ Container jms_koko    Started                                                                                                                  40.1s
# o$ h+ D* }' P6 K ✔ Container jms_lion    Started                                                                                                                  42.5s 1 L( W8 c, s, D; `2 e( m
✔ Container jms_magnus  Started                                                                                                                  40.6s ( c* D, T# U4 d) v# Y
✔ Container jms_celery  Started                                                                                                                  40.2s
" |, F' R7 Z2 X8 V[root@cusc_fortress jumpserver-offline-release-v3.4.1-amd64]# ./jmsctl.sh status- G: A6 d1 Q0 X, u' B4 s3 V
NAME                IMAGE                                             COMMAND                  SERVICE             CREATED             STATUS                        PORTS
) P5 T! M: b2 Ajms_celery          registry.fit2cloud.com/jumpserver/core:v3.4.1     "./entrypoint.sh sta…"   celery              2 minutes ago       Up About a minute (healthy)   8080/tcp
( g3 [% b0 O& ]  X* J6 pjms_core            registry.fit2cloud.com/jumpserver/core:v3.4.1     "./entrypoint.sh sta…"   core                2 minutes ago       Up 2 minutes (healthy)        8080/tcp
+ u: P: O! T1 a, U+ ?0 cjms_koko            registry.fit2cloud.com/jumpserver/koko:v3.4.1     "./entrypoint.sh"        koko                2 minutes ago       Up About a minute (healthy)   0.0.0.0:2222->2222/tcp, :::2222->2222/tcp, 5000/tcp, _$ G! `# G3 Z
jms_lion            registry.fit2cloud.com/jumpserver/lion:v3.4.1     "./entrypoint.sh"        lion                2 minutes ago       Up About a minute (healthy)   4822/tcp, 8081/tcp6 j" T$ f2 h, I- \! y4 d9 r: E
jms_magnus          registry.fit2cloud.com/jumpserver/magnus:v3.4.1   "./entrypoint.sh"        magnus              2 minutes ago       Up About a minute (healthy)   0.0.0.0:30000-30030->30000-30030/tcp, :::30000-30030->30000-30030/tcp, 0.0.0.0:33061-33062->33061-33062/tcp, :::33061-33062->33061-33062/tcp, 0.0.0.0:54320->54320/tcp, :::54320->54320/tcp, 0.0.0.0:63790->63790/tcp, :::63790->63790/tcp
/ [" Q7 ^* H& H: e+ C/ sjms_mysql           jumpserver/mariadb:10.6                           "docker-entrypoint.s…"   mysql               8 minutes ago       Up 7 minutes (healthy)        3306/tcp
* j1 d# v% S$ A' K6 g  mjms_omnidb          registry.fit2cloud.com/jumpserver/omnidb:v3.4.1   "./entrypoint.sh"        omnidb              2 minutes ago       Up About a minute (healthy)   8082/tcp. I# b6 k( w. o7 \% U% P
jms_razor           registry.fit2cloud.com/jumpserver/razor:v3.4.1    "./entrypoint.sh"        razor               2 minutes ago       Up About a minute (healthy)   0.0.0.0:3389->3389/tcp, :::3389->3389/tcp% X% Q6 B6 t: V4 I: Z! [
jms_redis           jumpserver/redis:6.2                              "docker-entrypoint.s…"   redis               8 minutes ago       Up 7 minutes (healthy)        6379/tcp% `; H" w7 v  B8 k
jms_web             registry.fit2cloud.com/jumpserver/web:v3.4.1      "/docker-entrypoint.…"   web                 2 minutes ago       Up About a minute (healthy)   0.0.0.0:80->80/tcp, :::80->80/tcp
8 S, g0 L1 s: t* Q) i$ L- o3 N# I' `& V

' C' l6 b! S4 X* V- J- F2. 其它一些管理命令5 d( p1 ?  U+ g' Q9 T6 c6 z, S
./jmsctl.sh stop
$ P5 R6 U1 S) M, |- `3 u./jmsctl.sh restart5 m5 J' b  E/ V+ \, f2 @
./jmsctl.sh backup
0 T7 _3 \1 g6 c. Q7 s( F./jmsctl.sh upgrade
2 `! Y& K& h" c* d3 {更多还有一些命令, 你可以 ./jmsctl.sh --help 来了解. a$ K' s! n# Z  E$ J# ]; ~
+ W3 b$ v* b1 k9 F( i2 f
3. Web 访问( u5 x. L* @  A# c. A; z' U/ |4 v
http://192.168.100.212:80
7 R# ]4 }* F% n: c" @4 Z9 V- j默认用户: admin  默认密码: admin$ U# A) a6 I9 v: `9 Q2 ^
: N. w* N6 z9 |' G, ?$ X, A. A6 P3 X0 z
4. SSH/SFTP 访问
' t) z# m7 O: wssh -p2222 admin@192.168.100.212% E0 s) t7 g. o1 j6 X" {
sftp -P2222 admin@192.168.100.212# {0 H: b6 p) B' }
# ]) q( T+ L% m9 o. P
5. 更多信息! V) m1 p# \9 ~4 p& @6 E
我们的官网: https://www.jumpserver.org/
0 A( @9 g6 ^/ x  z: `# F2 J我们的文档: https://docs.jumpserver.org/
3 A6 O8 ^! c) l% q
0 o; m# R: `8 c* c" a. N; B$ N, K; Xdocker exec -it jms_mysql /bin/bash
. y# K0 j* E1 i5 o" g" j# 如果变量 $MARIADB_ROOT_PASSWORD 不存在,请使用 $MYSQL_ROOT_PASSWORD$ V* {* ~( v% _+ D& v
mysql -uroot -p$MARIADB_ROOT_PASSWORD
/ p+ k" u# m9 u: l3 v) g) \6 v, \8 t; P* y1 p" g! p) R3 ]
drop database jumpserver;
6 y2 E. u" c7 Z% e% @4 vcreate database jumpserver default charset 'utf8';
3 V/ n, p" t( }: r- T4 O" Iexit
6 W, V6 @4 W2 D9 _exit
/ ?4 {* S3 b8 ^. i! c# c: J
: O: f( E" l$ Y2 m. L/ X' p" o, o  Vroot@4d4610d0f4b8:/# mysql -uroot -pNTg3ZWVhNWEtZjVhMy00ZjU1LT % o" y$ G1 A/ \8 L3 H, d/ ^. S
Welcome to the MariaDB monitor.  Commands end with ; or \g.* x) ?* _( p6 n4 y
Your MariaDB connection id is 145
. g4 k7 I% |0 u6 xServer version: 10.6.5-MariaDB-1:10.6.5+maria~focal mariadb.org binary distribution1 j. |4 _: }$ ~& `0 o+ S4 J$ }
4 V7 Q% `  Z& v/ v" j2 g+ O3 Z
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
9 |2 o  d" m1 M, J' J, l
; D6 i9 }/ B1 ]9 [- h1 n0 X& ?Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
& E1 ?8 z% O( \3 l' T- }! f0 X# r6 @
MariaDB [(none)]> drop database jumpserver ;$ C7 R  D! G! X0 _4 N
Query OK, 146 rows affected (4.847 sec). D# `8 Z( H+ ~: O) ^
+ n$ [& K7 K; F
MariaDB [(none)]> create database jumpserver default charset 'utf8';
8 k" p- Q1 \' S) b4 kQuery OK, 1 row affected (0.001 sec)
4 x! t+ L9 l4 g( w* I  _$ U8 J( a. q. ?5 [; ~
MariaDB [(none)]> exit* _) Y  W# E0 O% \$ O
Bye- D# ^" B/ v3 ]' E6 G/ L
root@4d4610d0f4b8:/# exit
! L* Y: {6 c: d# G/ H, ^& qexit
% }& @) u. W3 g9 ~2 u" h. X+ P" c

1 t. N$ s- E" _8 ^8 _4 M  }# _* |4 w, z, e8 C+ s
# /opt/jumpserver.sql 为旧版本数据库* w9 a7 ^7 q+ O4 s, M2 e/ w5 [
./jmsctl.sh restore_db /opt/jumpserver.sql+ V) U0 w: V5 D& v& c$ \' K8 V

$ J5 V- m+ _& y0 ?& y. v: T[root@cusc_fortress jumpserver-offline-release-v3.4.1-amd64]# ./jmsctl.sh restore_db /tmp/jumpserverdate.sql 9 p. b& S" {' {5 g: \# k: Z5 W! X6 g. a
[ WARNING ] Make sure you have a backup of data, this operation is not reversible! 0 V0 R# p; S  K

0 T2 N" A+ s; C0 lStart restoring database: /tmp/jumpserverdate.sql* x" ]" U! c" q, v( r& J

9 V. X5 ]' N( B+ Z& a开始还原数据库: /opt/jumpserver.sql4 j$ y9 |3 v& n3 v$ R" r5 z
mysql: [Warning] Using a password on the command line interface can be insecure.: M9 u/ I2 c5 ^2 D4 T
数据库恢复成功!  I' _. ~) M6 W. Y' V
5 y2 L5 v* ^4 z# R) v
./jmsctl.sh start5 r  B' c- u. ?# ?3 S
2 n# }3 _! c: J* W% A  q- x2 E3 w
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 01:48 , Processed in 0.037216 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表