易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 749|回复: 3
收起左侧

jumpserver安装步骤

[复制链接]
发表于 2023-3-1 19:00:05 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 2 金钱 才能浏览
 楼主| 发表于 2023-3-7 14:07:45 | 显示全部楼层
#!/usr/bin/env bash
) K0 U+ F4 m7 r9 j+ g: `3 C#
+ i: u; A$ Z9 O( r$ `& t  R- \& c( t
VERSION=v3.0.30 R- t8 {/ R# c4 a
DOWNLOAD_URL=https://resource.fit2cloud.com
4 p' {, B2 u: I. J8 }' a0 e" H+ }
& z$ y& @4 _* v* Z/ N4 {function install_soft() {: {) h9 V# I  ]
    if command -v dnf > /dev/null; then
0 q0 z5 A) s* |      dnf -q -y install "$1") L8 g3 J$ f& K" X7 \$ J$ B
    elif command -v yum > /dev/null; then
- n& Z0 {* H0 j2 V# A  |" g      yum -q -y install "$1"4 m/ X7 S' A2 r1 p1 c5 [6 J; q
    elif command -v apt > /dev/null; then  ?' P3 h( L, M5 m
      apt-get -qqy install "$1"
. N: F) s+ x7 M) r    elif command -v zypper > /dev/null; then3 Y( v* R' S, p" C: X5 P9 N
      zypper -q -n install "$1"
# `# h9 H, K. l    elif command -v apk > /dev/null; then
! \2 N# o7 V) @* V8 y, f      apk add -q "$1"7 e! M" L  @2 }2 [) V
      command -v gettext >/dev/null || {: W  a0 w3 h- j( W. `* C$ u
      apk add -q gettext-dev python34 w- S) X/ a, ?
    }
1 {% `8 T: @- O/ r! H; C" a7 X    else
- J# p! v5 H; n9 F) I  ]$ j      echo -e "[\033[31m ERROR \033[0m] $1 command not found, Please install it first", N: g: V: ?5 o- h
      exit 1
3 ~5 Y6 H# p) o' P6 y    fi
7 V+ d' M9 ?9 ~; X}
$ J7 c% i) r" |; x! W$ @. J
2 I6 n+ ?, K: F7 d: qfunction prepare_install() {. _. t- r9 d+ C9 v8 V/ I7 |
  for i in curl wget tar iptables; do
4 l; h# a$ G" W" |1 j    command -v $i &>/dev/null || install_soft $i2 |. a$ u5 v6 v
  done5 }' Q5 Q* q* h' d8 f4 s. Y
}0 U& U8 G# l. g* }7 d+ o

' T6 i/ K# n9 I9 Nfunction get_installer() {5 c" b2 [2 ?2 w
  echo "download install script to /opt/jumpserver-installer-${VERSION}"# a# {+ ]/ ~: \% n
  cd /opt || exit 1
- ~6 `6 J; W. g# Z  if [ ! -d "/opt/jumpserver-installer-${VERSION}" ]; then
( c8 }" S2 ]  S) A# @    timeout 60 wget -qO jumpserver-installer-${VERSION}.tar.gz ${DOWNLOAD_URL}/jumpserver/installer/releases/download/${VERSION}/jumpserver-installer-${VERSION}.tar.gz || {
. f( Y$ G) R4 |3 _) N+ @      rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
; t- H2 i( |; H; x: v" O# E      echo -e "[\033[31m ERROR \033[0m] Failed to download jumpserver-installer-${VERSION}"
8 ~# r, t; }0 v2 J9 ~      exit 1
+ `2 p( r+ o4 P    }
$ \9 N1 G- q9 p8 A2 g    tar -xf /opt/jumpserver-installer-${VERSION}.tar.gz -C /opt || {
/ r- K5 x3 P1 F      rm -rf /opt/jumpserver-installer-${VERSION}# \6 u+ P. [6 C' ]1 F
      echo -e "[\033[31m ERROR \033[0m] Failed to unzip jumpserver-installer-${VERSION}". Q. j5 H" Z  F# ~- A
      exit 1
: a7 _6 B) o1 r4 d4 {    }
. C! L  @  M; b/ A, g, y+ Y: R    rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
9 T' Y+ T' I1 J5 @/ ?- m  fi
) p5 |$ I% D; Y: m- K}
' i( C) T2 F: z" _8 s" B9 J
% a; @0 ]1 g0 a% ]7 Bfunction config_installer() {
5 Q: X3 `* k0 @- i  cd /opt/jumpserver-installer-${VERSION} || exit 1
# g6 r$ f% ?) R* D# n( s: L$ y2 l3 X/ M* U  sed -i "s/VERSION=.*/VERSION=${VERSION}/g" /opt/jumpserver-installer-${VERSION}/static.env
) V. W6 u( e4 o4 I, N  sed -i "s/# DOCKER_IMAGE_MIRROR=1/DOCKER_IMAGE_MIRROR=1/g" /opt/jumpserver-installer-${VERSION}/config-example.txt
- L) M3 x% r' e* `( R# O0 O7 D' _" \: [  ./jmsctl.sh install+ T' ]5 P( S7 }% A# H. `" a
  ./jmsctl.sh start! e! B4 Z: i' U9 r* o
}
; I" r0 \* a0 o- `6 h
. `! R, _3 U. I7 O7 \/ gfunction main(){
. X7 \7 W/ C$ l$ I4 ]  A  if [[ "${OS}" == 'Darwin' ]]; then
5 q4 {2 Z; D5 z' M: s$ X" r) A    echo
8 a1 g" ~3 g* d  ~    echo "Unsupported Operating System Error"
" I3 l$ p: z9 _    exit 18 v4 i1 m* M9 G# U% T9 m
  fi
! g0 A1 n) f4 e( @; D1 N  prepare_install
9 K9 h( E7 N( s* o+ O1 T  get_installer+ y) \5 u; z2 v& i# h
  config_installer0 F5 Y, e0 c3 L5 z8 Z
}; p2 F, o0 c7 Q
* z6 ~6 S  N" c; G
main
1 v  I% ^& {! X4 M
. w( D# \2 U7 A) Z
 楼主| 发表于 2023-3-7 14:50:18 | 显示全部楼层
cd /opt4 z# F) I( c2 W
wget https://resource.fit2cloud.com/j ... aller-v3.0.3.tar.gz2 h/ u6 d5 O; v4 Q9 h8 z/ B
- v! r1 f6 ]+ j1 a
https://resource.fit2cloud.com/jumpserver/installer/releases/download/v3.0.3/jumpserver-installer-v3.0.3.tar.gz% ~. f& J$ k. ^
tar -xf jumpserver-installer-v3.0.3.tar.gz0 _1 P, S# g4 w3 d
cd jumpserver-installer-v3.0.32 p% n+ h) j6 X. n

4 Q' e$ z$ M' p- _: U& Z- ?) f' m4 T4 ^8 b) T3 c
./jmsctl.sh upgrade
$ m: Z" G* I0 S& t
8 ]& ^6 m! N8 D: S/ G# 启动 JumpServer 服务5 h0 f- W! G# G0 o6 N
./jmsctl.sh start+ u& o8 D! ?" T+ G
9 g& G4 \' B4 H. k( ?
 楼主| 发表于 2023-3-7 14:53:50 | 显示全部楼层
[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh upgrade
1 ~, E6 l" ?. K$ _Are you sure you want to update the current version to v3.0.3 ? (y/n)  (default y): y* u2 B" r! m2 _8 W& D
- w7 I! c' F$ p- L0 A" u6 h
1. Check Configuration File
7 C+ y$ B; S9 l; IPath to Configuration file: /opt/jumpserver/config
; S$ |. M" S8 H/opt/jumpserver/config/config.txt        [ √ ]; K2 D/ I/ y! F6 u. b& v
/opt/jumpserver/config/core/config.yml   [ √ ]* u2 |2 \; _8 [: p; K4 `- `
/opt/jumpserver/config/koko/config.yml   [ √ ]
, o/ n, O8 J  P" Z" R( D/opt/jumpserver/config/mariadb/mariadb.cnf       [ √ ]
7 l! e1 Z6 S8 K* g8 e/opt/jumpserver/config/mysql/my.cnf      [ √ ]. T9 \$ E7 [8 y6 Q  c5 k
/opt/jumpserver/config/nginx/lb_http_server.conf         [ √ ], U. L- u' t$ b
/opt/jumpserver/config/redis/redis.conf          [ √ ]' j: s, G- N8 e) W
/opt/jumpserver/config/nginx/cert/server.crt     [ √ ]
! }1 n% g& E) m8 r/ B' h% m/opt/jumpserver/config/nginx/cert/server.key     [ √ ]1 [* u! R/ j  R
complete
" F( e2 a7 Z4 y' m7 x5 t
: n0 A1 [! v) r2 g2. Loading Docker Image7 F$ V: E: ?+ h
[jumpserver/redis:6.2]
8 r: l0 Z& x- e" D' G. w" X, d6.2: Pulling from jumpserver/redis
- K" X4 l1 p* G* xDigest: sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a686096 A" W/ ^. K1 Z9 L, b; t9 _
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
8 o- z+ c1 S- b1 }swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.21 a' L% }- z# ^" t
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2; s9 s- _" y( g, d# s! Z
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis@sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a686096 R$ V) p+ Q. |4 i. v" \
" a2 {* \! v+ d1 U2 s1 o( f
[jumpserver/mariadb:10.6]
& q2 A4 F, L; H0 i( D1 |10.6: Pulling from jumpserver/mariadb0 [+ l3 f. r' _/ D( F& l( {
Digest: sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b
1 ]8 D& X) X. n: {Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6$ h3 `7 @" C- g# }
swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6* O9 x2 d% s$ ~8 C/ ^- F
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.66 X6 E* t2 t" x) z
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb@sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b
  x% i3 P9 l: b0 e  A5 I
& A  [5 P9 [0 e) l& N[jumpserver/core:v3.0.3]" o7 R3 |. X5 _; f
v3.0.3: Pulling from jumpserver/core/ p! G& R. U$ y9 m/ M9 [/ O$ U0 E+ o/ K
Digest: sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74
. k( T1 \. e1 k+ _3 `' mStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.37 u; M, x4 W9 T8 }+ j' Z* {
swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
6 o% M0 J& J9 {; TUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
8 X. G! Y' d+ [5 z; EUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core@sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74
3 o& ~2 _) L0 G+ P1 ^
2 G+ S( _) ~9 t; A4 C0 a[jumpserver/koko:v3.0.3]
  g& D7 ~9 i# m1 c7 q* r3 vv3.0.3: Pulling from jumpserver/koko
1 W$ d5 R+ ?, T5 ?$ Y/ o  w8 oDigest: sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1
  ~+ E9 N% s4 @# UStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.30 ~' |# q3 Z. f# I0 a
swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
$ M# I: A9 Y1 N  u7 q' m. b' }& B2 ?Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
# i' m4 T2 z8 w% K( N: oUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko@sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1
7 s! U: N1 ~, {' k  y5 L
: a1 X" S  u" d( H/ k[jumpserver/lion:v3.0.3]/ r- G8 |4 x- I: H0 Q3 n
v3.0.3: Pulling from jumpserver/lion
/ G( ~# b2 n8 v; x; o1 `Digest: sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c6 ?5 e/ K6 y1 {, d
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
. E* T0 z9 g* |3 m* n. f# h, ~swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3! F# `8 ~- n: b% |% Y
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3# i$ m, R6 t, i9 N
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion@sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c$ b  S- _- v. X

+ N8 h) P0 o: s* z1 `" X" D[jumpserver/magnus:v3.0.3]
' l/ |/ z+ W% s# U* Kv3.0.3: Pulling from jumpserver/magnus
9 h! c% b1 N, b6 \Digest: sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7/ o7 L+ \4 A  o) N$ V1 E
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3% f! x  }1 X9 ^$ F# t1 ?( x3 [
swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3
* P7 t- ?: E' y( T/ _- H; NUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3$ [3 ?* f( s$ O) d7 S
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus@sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7
7 C2 x5 j9 F/ w1 m: r/ `8 B4 }- b* `$ `- {, _9 ]
[jumpserver/web:v3.0.3]
( g6 ~) S- Q; L  g6 A! V0 }v3.0.3: Pulling from jumpserver/web7 U/ [6 Z( y6 _# \  x* X+ w& J
Digest: sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43) Y0 I# L/ a7 s+ W
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3+ a2 U% b2 x* N
swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3) t7 ~0 k9 r4 U: r+ e
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3
" W8 W/ b  z- X, y( SUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web@sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43
3 M( c6 O2 d, j! R1 i; }
1 k4 ^5 u- r- F9 T1 t# Xcomplete
, U# A1 d/ N, A* Q0 i
% J7 ^: `$ v. m) u1 _4 ~3. Backup database
+ ^# e* c; o: |Backing up...- W3 j( i6 p; x3 y% q! k
[SUCCESS] Backup succeeded! The backup file has been saved to: /data/jumpserver/db_backup/jumpserver-v3.0.3-2023-03-07_14:51:17.sql
2 j2 b% [( n# O" u  r( O' f" P) I- S# N$ Q2 `7 `
4. Backup Configuration File1 d: G5 d. {% p3 Z; O/ F8 v
Back up to /data/jumpserver/db_backup/config-v3.0.3-2023-03-07_14:51:19.conf
2 Q9 x: s) P  R% k& \
4 a5 u* j$ L2 \( N2 c! z$ V5. Apply database changes
, O% d6 X! E, y) j# e. UChanging database schema may take a while, please wait patiently0 r. a. f. n/ O
Detected that the JumpServer container is running. Do you want to close the container and continue to upgrade? (y/n)  (default y): y
2 R) y7 |3 T& c1 R5 y
7 b5 w: V6 G) D8 F! i4 X[+] Running 1/1! Y2 f$ U2 J0 [" n2 a7 u, m8 _' K
⠿ Container jms_core  Stopped                                                                                                                                 0.5s- M% R0 U# E. h
[+] Running 1/12 _" Y1 @/ J. v7 _2 L1 }
⠿ Container jms_koko  Stopped                                                                                                                                13.7s2 [: E9 A% i8 W$ F
[+] Running 1/1
$ V* }6 o* f, a) x0 `! I4 d0 T ⠿ Container jms_lion  Stopped                                                                                                                                10.4s; l( k5 M( q6 @6 f/ D0 J
[+] Running 1/1: H4 d# J+ t( k2 Y) i5 S- c7 m% |
⠿ Container jms_magnus  Stopped                                                                                                                              10.5s. W: M/ y( i) ^$ O% _
[+] Running 1/1
( q2 J$ }# {' l. y) R. H3 F) c4 P ⠿ Container jms_web  Stopped                                                                                                                                  0.4s
) P" e7 O/ S8 \[+] Running 1/1
8 H7 V# p$ F" c3 K% B6 s ⠿ Container jms_celery  Stopped                                                                                                                               0.6s' A7 k8 Z% _- p
[+] Running 1/1% Y( _( z" `' A4 ]- J; D+ @: w* R9 y
⠿ Container jms_core  Removed 0.2ss2 f2 U3 S) i" p  o- {- N
[+] Running 1/0/ n( g) o3 E& `2 g2 Z
⠿ Container jms_koko  Removed 0.1s+ \5 z$ a  n3 ^, |/ p
[+] Running 1/0
# ^8 [9 g$ Y5 R( j! W/ C0 m2 `4 @ ⠿ Container jms_lion  Removed 0.0s
% |( _6 Z5 [+ A: `1 }) `+ k[+] Running 1/00 J/ v2 U. M7 z
⠿ Container jms_magnus  Removed 0.0s( H0 d3 i' s5 n; M
[+] Running 1/00 m5 D! N, T0 H2 q
⠿ Container jms_web  Removed 0.0s' t  s6 T  o( G6 }* U: [3 D
[+] Running 1/13 ]0 X8 q" p2 g6 k9 x1 w$ U
⠿ Container jms_celery  Removed 0.5ss
  N' C: r9 F/ S2 J( Q. e3 g( P& k+ r6 ]
[+] Running 3/3
! l6 N( M0 }% [* @7 m* \* b ⠿ Container jms_redis  Healthy                                                                                                                                0.8s$ F1 x* X% O. s6 A9 a
⠿ Container jms_mysql  Healthy                                                                                                                                0.8s$ Q; P$ f  Q; O; X. Y! |
⠿ Container jms_core   Started                                                                                                                                1.4s
6 J" a- C( ~9 ^* h+ Y& i2023-03-07 14:52:12 Collect static files
7 z/ R4 ^* \8 h5 `2023-03-07 14:52:13 Collect static files done/ ], X5 F& Y7 Y* F
2023-03-07 14:52:13 Check database structure change ...% @  _! Z* `6 W  u4 c6 z
2023-03-07 14:52:13 Migrate model change to database ...
# q% F: r2 N. A/ D' X+ X8 ]9 BOperations to perform:
% e  E/ M3 \9 A) E* ~: M0 B& w  Apply all migrations: accounts, acls, admin, applications, assets, audits, auth, authentication, captcha, common, contenttypes, django_cas_ng, django_celery_beat, jms_oidc_rp, notifications, ops, orgs, perms, rbac, sessions, settings, terminal, tickets, users* i/ Y! j( Y8 e
Running migrations:6 U' I: C/ b" t, b
  No migrations to apply.
# m& C* G2 h; b
! P# x5 n& G9 M4 U  Y# u- T, ?After migration, update builtin role permissions
. K* I$ I, I) R/ i6 e+ S  - Update builtin roles
; J6 C8 L; i3 w9 U. O  b9 b7 W/ t4 o5 d
6. Cleanup Image9 v! Z& P. W, l7 r( j$ }* e# S+ `1 V

, [+ B( J8 K& ^) @1 v7. Upgrade Docker6 c) r, y4 M9 @/ m

- Q+ y0 Z% t, n. A) M& c8. Upgrade successfully. You can now restart the program2 N* I" s. n$ ^$ F
cd /usr/src/jumpserver-installer-v3.0.31 c7 E1 f/ u7 M" l" g
./jmsctl.sh start
$ |5 g+ h! l0 G% V8 [0 ?4 I- p4 g6 F

4 G! F: h0 w7 r[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh start9 V. F, T' G9 ]- K+ W
[+] Running 8/8* C: z9 v# U: d% |, f5 z: L
⠿ Container jms_mysql   Healthy                                                                                                                               0.9s+ P0 `9 I7 U+ P) \* c  A
⠿ Container jms_redis   Healthy                                                                                                                               0.9s
& c$ M; J- i" i9 q+ c3 ?- ~7 I ⠿ Container jms_core    Healthy                                                                                                                              37.0s( o. c! ]# I- z. k* \  p
⠿ Container jms_web     Started                                                                                                                              38.9s' e6 W; Q# A; J& C* H' c+ M$ v
⠿ Container jms_koko    Started                                                                                                                              38.8s
0 r3 b/ }! V' E, C: f5 X" p% s9 ~ ⠿ Container jms_lion    Started                                                                                                                              38.8s
0 {  B( W6 @2 m, R9 G* i ⠿ Container jms_celery  Started                                                                                                                              38.6s
4 ]; B' C, G# c0 \ ⠿ Container jms_magnus  Started                                                                                                                              38.5s
* Z* m/ F1 c5 V0 P# |! v/ U3 i% D[root@jumpserver3 jumpserver-installer-v3.0.3]#  
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 21:37 , Processed in 0.063095 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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