找回密码
 注册
查看: 751|回复: 3

jumpserver安装步骤

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2023-3-1 19:00:05 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 2 金钱 才能浏览

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-7 14:07:45 | 显示全部楼层
#!/usr/bin/env bash
! M" q& o1 l) S: J' ?+ F" `+ D! u#$ a& c* p) l; ^0 j& ^+ D
# J9 \' @& J1 z( p
VERSION=v3.0.3) p; @+ k0 \8 c  j/ p0 v5 P2 ^
DOWNLOAD_URL=https://resource.fit2cloud.com' R' ]- x+ ~! K6 N

5 o; C. s( |9 n8 X. i/ qfunction install_soft() {
" L! @5 z, U/ y+ I# f    if command -v dnf > /dev/null; then
$ P( i* V7 `5 a      dnf -q -y install "$1"
! L# g9 {: N* z: f    elif command -v yum > /dev/null; then; ?9 F' N; i* w( x
      yum -q -y install "$1"
! w, [2 v! O2 Q9 ^9 G    elif command -v apt > /dev/null; then
" C& p( i& L2 p. O1 n, Z      apt-get -qqy install "$1"
( y+ A/ ~( @) |$ P2 u    elif command -v zypper > /dev/null; then
# E4 G& M$ g' Q  C* [& }( b      zypper -q -n install "$1"- Z2 E$ o/ z2 M3 d# z+ i& N
    elif command -v apk > /dev/null; then5 W1 v. G5 ^: V. C1 @" y+ I6 j* ~5 w
      apk add -q "$1". f8 ~4 a. y( r, w- m; b
      command -v gettext >/dev/null || {5 C: r% X: `$ w$ e7 {
      apk add -q gettext-dev python3* @. K, ~: W) S& E
    }# N5 w% T) e0 F6 W# |( T: X7 _
    else
. n9 Q2 A0 }# A      echo -e "[\033[31m ERROR \033[0m] $1 command not found, Please install it first"6 @* i. e  h0 w  ~1 o& j8 C
      exit 1
& e' q4 t8 I9 L    fi+ M- }# T: L- W! H$ k
}
6 I6 j& q$ I% c) X. F7 k3 c! M7 P; Q3 ]% T
function prepare_install() {6 h5 e/ I# {! I2 [# q( P/ x9 u
  for i in curl wget tar iptables; do# O' f4 S% M' P- O
    command -v $i &>/dev/null || install_soft $i
+ E" P5 v5 f" h: \9 \6 O/ H  done
' L7 {5 W" p8 S" ~1 ]1 T/ l0 c}
+ R& z( F, d2 [$ ], b0 @+ i: m9 v- u) q  s
function get_installer() {
) ]  j' U7 a( R+ |' |# o% E1 a  echo "download install script to /opt/jumpserver-installer-${VERSION}"1 q( |' S# A% S& k
  cd /opt || exit 1% Z, ^7 T- ?+ J$ h6 w% D
  if [ ! -d "/opt/jumpserver-installer-${VERSION}" ]; then4 w  k8 z( ?/ {
    timeout 60 wget -qO jumpserver-installer-${VERSION}.tar.gz ${DOWNLOAD_URL}/jumpserver/installer/releases/download/${VERSION}/jumpserver-installer-${VERSION}.tar.gz || {+ t" b6 F! c7 ]; j& I- m. C8 S
      rm -f /opt/jumpserver-installer-${VERSION}.tar.gz- y6 \" ?. q. ?; Z6 I
      echo -e "[\033[31m ERROR \033[0m] Failed to download jumpserver-installer-${VERSION}"
1 P% M5 U9 ]9 H3 W1 {; p- t      exit 1  \$ p! J9 Y' I2 @' ^
    }
. F) E5 x8 T0 T, [( I, T    tar -xf /opt/jumpserver-installer-${VERSION}.tar.gz -C /opt || {
3 S7 T+ g7 q( b5 i      rm -rf /opt/jumpserver-installer-${VERSION}
* I* f! q9 R3 v1 \: g( t, u      echo -e "[\033[31m ERROR \033[0m] Failed to unzip jumpserver-installer-${VERSION}"
: c! a& ~* q5 ?, N' e      exit 1
$ F: }8 U( X8 L- H8 O    }
* q2 `: x2 p$ t    rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
, C0 s- A0 o3 @' H$ ^& [8 T# @  fi
  E3 d2 ]9 W$ W: G5 E* H}
' U# }$ M' p( k2 a. o3 @9 Q' b2 k
- q- q7 t- p# z& zfunction config_installer() {
) l! _; Y) |* `: I9 v* s! [$ J# ?  cd /opt/jumpserver-installer-${VERSION} || exit 1
4 l, m6 n( c+ O; e2 \- h  sed -i "s/VERSION=.*/VERSION=${VERSION}/g" /opt/jumpserver-installer-${VERSION}/static.env# z- R, k+ O4 W9 I
  sed -i "s/# DOCKER_IMAGE_MIRROR=1/DOCKER_IMAGE_MIRROR=1/g" /opt/jumpserver-installer-${VERSION}/config-example.txt* U4 N5 F/ X# t) M* ~
  ./jmsctl.sh install
# P% M# R5 [! I# ?2 N% o( h  ./jmsctl.sh start
& _* e1 k, v( ?$ [) K}
7 \0 @/ W! A. w* ^# r7 F& H8 i' K- k8 p3 c
function main(){
& R; N. o& c9 P, B  if [[ "${OS}" == 'Darwin' ]]; then
3 @& v* Y. f# z# f    echo
  Q2 |2 T/ c" c9 H, o) X8 M$ }* ]    echo "Unsupported Operating System Error"
  R+ [$ k  z! r1 r$ o/ ~    exit 1" ]8 J5 c( b6 w: ?6 ?- q
  fi4 O  d9 k" m  C* J
  prepare_install
8 n/ y* h- T, Y) T4 Q1 e( f  get_installer
" b) I/ b5 a' z' Z% g) d5 }' p& G  config_installer
# u/ @# K! u1 R6 _: H}- R! E7 {: W. Y, C* b. w

4 X( G7 P( ~$ [main  ]) O+ C5 I" [* ]2 Q8 i# d

8 \; @- q/ ?5 X) `1 g, y; k% P

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-7 14:50:18 | 显示全部楼层
cd /opt
  x" z5 q( E$ Wwget https://resource.fit2cloud.com/j ... aller-v3.0.3.tar.gz! c6 T7 z0 O1 h3 k

, V3 i/ W& R: `https://resource.fit2cloud.com/jumpserver/installer/releases/download/v3.0.3/jumpserver-installer-v3.0.3.tar.gz
1 r4 \3 ]! K* U: \: ptar -xf jumpserver-installer-v3.0.3.tar.gz
1 u9 o2 n. }( m$ E- rcd jumpserver-installer-v3.0.3
6 i( I2 @4 N% h# c3 y: `' i4 a* ^+ V' }8 D$ ~

9 T' g& [8 A$ w( R( c./jmsctl.sh upgrade$ l* X8 u5 V! `5 U9 T! S0 A( T
4 P+ X( ~6 ~! T% n1 S
# 启动 JumpServer 服务' l' ^, u; ?5 a3 N- I2 m
./jmsctl.sh start
: \# C" f6 D3 M2 p4 `
' S% C. T2 d+ N/ R2 N2 C

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-7 14:53:50 | 显示全部楼层
[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh upgrade
6 i- i1 w4 [! F6 d7 ?0 j+ b8 m3 Q2 iAre you sure you want to update the current version to v3.0.3 ? (y/n)  (default y): y
. v% W! T0 }" k8 Y7 q
) m& L. D* v& c; A1. Check Configuration File( i  j3 t+ W# _7 K
Path to Configuration file: /opt/jumpserver/config
7 A( _% k& B. K" u* z1 m6 r/ q" M- Z/opt/jumpserver/config/config.txt        [ √ ]
7 I# A; x: S" C! b- H; N& P+ m. f; O/opt/jumpserver/config/core/config.yml   [ √ ]6 c+ w5 i% ^# D- ~5 O2 r
/opt/jumpserver/config/koko/config.yml   [ √ ]
1 z" [1 _4 g$ c8 K/opt/jumpserver/config/mariadb/mariadb.cnf       [ √ ]4 J2 Y% g. s/ _/ `8 e& ~8 Z( F
/opt/jumpserver/config/mysql/my.cnf      [ √ ]9 R9 ^9 {" P' {, ^4 F; o$ a% D# i8 P
/opt/jumpserver/config/nginx/lb_http_server.conf         [ √ ]
( r9 {  |5 r6 g) S! K6 e4 v/opt/jumpserver/config/redis/redis.conf          [ √ ]$ C# o; L2 ?8 D- W2 t
/opt/jumpserver/config/nginx/cert/server.crt     [ √ ]8 R- L9 e6 E: N: m  [4 H4 x- h' d
/opt/jumpserver/config/nginx/cert/server.key     [ √ ]/ K. ^' c% B9 I! Y: F
complete
1 T) o: V* @# H- B
* n+ I" X: B) K" I. K+ a, k2. Loading Docker Image: a8 H) |0 P) A% O
[jumpserver/redis:6.2]
! ]; U) E8 w5 P; M# y6.2: Pulling from jumpserver/redis
' k: P& [( L. B, gDigest: sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a68609
* O# L3 k8 P- p: _" VStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
$ t* E5 {  W0 a. ^. e) @swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2* k4 G4 ?1 X) l8 A
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
; `9 f' o# q) j# p: Q* \, {Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis@sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a68609
1 w$ A, B+ r# W9 ~# y' B! D. k
6 u9 b; p% `  d" Y[jumpserver/mariadb:10.6]
5 q2 h* ]! d& S# o- M4 q10.6: Pulling from jumpserver/mariadb
1 g) a$ i9 {; `  rDigest: sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b
8 L* l2 F& x! {9 l; }1 MStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
) ^0 P2 ?* G% u* G# U( U6 Kswr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6* `/ y/ E" B1 E2 C+ {
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
, q# I* \* H, YUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb@sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b! w& _4 L5 a; _4 S5 h) J

4 N8 D3 p/ Z* t7 B& ^5 r[jumpserver/core:v3.0.3]
  S& X& I; e, a, q. U% r) `v3.0.3: Pulling from jumpserver/core& N1 j: d) V7 F  j' {. q- y2 I
Digest: sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74
2 a& i' x/ t4 u3 u3 qStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
9 O+ Z/ _1 }- Z) {' X4 g, vswr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3' @8 X  U9 ?/ f# Y9 O$ g
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3  C/ J$ _; }, b6 s6 o7 l
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core@sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad747 Z: u( {- ]* r: y. \7 }3 _
- Y4 d+ M8 w1 L
[jumpserver/koko:v3.0.3]  b$ ?' {- d. }& N" [( y, ~
v3.0.3: Pulling from jumpserver/koko' l# ]% _8 O0 |, e4 e0 O1 p
Digest: sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1! I: C- |% }4 y& H& m( Z9 F
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
0 {3 b+ `) C' ?- m/ z1 z- Nswr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
  N3 A7 |9 F5 n* m5 ]Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3( p' ?2 m( e) E; e* m
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko@sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1! o3 A8 X- I, e4 ]7 a3 R6 h
: V2 q5 o- G, ]7 \" Q  _7 j3 A$ e
[jumpserver/lion:v3.0.3]  M0 a2 b: `; @. y+ }( D
v3.0.3: Pulling from jumpserver/lion$ K" G1 ]2 Q& Z4 h
Digest: sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c
2 y; R! a6 C, E6 N1 J* c0 D' [Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
8 t$ K( R; g8 i7 {& Dswr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3+ u2 K' D1 E) k$ w
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
. C7 s3 E. i) r. O+ u1 BUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion@sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c
" O9 ]+ p8 m% `9 m
* ]" X, ~) U, @+ f* L[jumpserver/magnus:v3.0.3]/ n" G+ L6 I" w3 e
v3.0.3: Pulling from jumpserver/magnus+ [* Z3 v5 L6 ^
Digest: sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e77 x- [. l. Z7 M
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3! i: x2 N: Q  U- j& ?
swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.37 g9 _( J. K7 Z) P
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3
# n6 |. @% K9 qUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus@sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7
$ |0 R1 U, s& I$ |* F" _
4 L3 c" p0 |. O$ B7 g# g  O. ~1 a  }, C[jumpserver/web:v3.0.3]1 T% n; J2 u, ]4 e6 K* q
v3.0.3: Pulling from jumpserver/web
' o" T% I: i7 ^* A) }4 N: @0 bDigest: sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43: j( h4 B' a  E8 [
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3
2 E5 o" }3 |8 j; Y0 f& ]7 C/ Iswr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3$ q" h0 g) m- _
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3
& O& S, d- W4 U  J0 n- MUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web@sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e434 n) j7 ]4 ^6 ^# G5 }0 g
# B; V: H0 K2 F
complete) z/ f! _. S4 W, j6 k5 y3 E/ x

4 l9 U+ ~# q! \; k( p# ?3. Backup database
& T. a# e1 G& w; p9 U  [" L8 S2 }Backing up..." W+ ^6 ~2 I! I, L3 J  O! g
[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  q( m& x$ X" M/ x/ h! E
- M; ]3 N5 K9 [
4. Backup Configuration File
" _& f/ V7 ^0 R/ SBack up to /data/jumpserver/db_backup/config-v3.0.3-2023-03-07_14:51:19.conf+ ]. x' G+ |# C1 @6 M; U

/ B4 Q" U; y4 \: o  ^, X" C5. Apply database changes
' E$ z5 t6 y  @: Z! o' e1 GChanging database schema may take a while, please wait patiently
. l5 v, L2 |  t# A2 K5 DDetected that the JumpServer container is running. Do you want to close the container and continue to upgrade? (y/n)  (default y): y
) t6 N6 K4 i# T; g, f# p, M5 j
! Z* o7 @0 }* u) F[+] Running 1/1
$ V7 z2 Y: f' N7 H ⠿ Container jms_core  Stopped                                                                                                                                 0.5s
: P+ F8 W% a! M6 p/ g! H1 ][+] Running 1/1
$ O" h2 {% W: }; q' m: o ⠿ Container jms_koko  Stopped                                                                                                                                13.7s0 L& |* y3 n4 `2 C6 s# |% U/ A0 z0 T
[+] Running 1/1+ n. o5 Q; k5 A, x9 R1 b3 t
⠿ Container jms_lion  Stopped                                                                                                                                10.4s
& M2 A- B; N8 k( b[+] Running 1/1
. L+ b" `5 n0 `0 y1 U ⠿ Container jms_magnus  Stopped                                                                                                                              10.5s
8 H+ k; M7 N+ P' S[+] Running 1/1
3 X( _9 w6 a  s0 }1 A ⠿ Container jms_web  Stopped                                                                                                                                  0.4s6 \. {  c! ?' ]: Y
[+] Running 1/1
' x' P! m7 u4 n$ X ⠿ Container jms_celery  Stopped                                                                                                                               0.6s
) L: L( Q: u9 A& H[+] Running 1/1- p2 o. f- {2 q2 y5 B5 m
⠿ Container jms_core  Removed 0.2ss7 e. Q8 c8 W& o& @1 a) r# ~7 k& h
[+] Running 1/0; w% R+ E/ r. [5 d7 Z. G% k3 K/ T
⠿ Container jms_koko  Removed 0.1s
2 ]' ]4 o. \2 V, Q3 \[+] Running 1/0
9 f$ R7 j! X, |6 H% ~ ⠿ Container jms_lion  Removed 0.0s2 h/ Y( b! }! j. J
[+] Running 1/0
( j" v+ X+ G/ U ⠿ Container jms_magnus  Removed 0.0s6 A. u6 |8 ?' E' {4 ?2 ~
[+] Running 1/0  @  {! O5 ?; u) w6 P" L
⠿ Container jms_web  Removed 0.0s0 Y6 j1 d% s# i
[+] Running 1/1
; ]/ v2 S% G' N% r9 i, [ ⠿ Container jms_celery  Removed 0.5ss
8 D- ~/ K2 A8 S0 L' h( [
  z; R) Z$ B# R[+] Running 3/3
8 U" b5 Z. b+ x0 T! e1 J3 q# ]. B ⠿ Container jms_redis  Healthy                                                                                                                                0.8s1 ]" C, A  r$ J; R
⠿ Container jms_mysql  Healthy                                                                                                                                0.8s, E8 B% W1 R% E7 e! S
⠿ Container jms_core   Started                                                                                                                                1.4s* P, Y% S) Z2 K9 Q
2023-03-07 14:52:12 Collect static files
" l3 b$ v- v5 I3 C! [% W2023-03-07 14:52:13 Collect static files done
& g* A* s2 b2 T6 q; K& @  p- y  c2023-03-07 14:52:13 Check database structure change ...
; P: `$ B/ D6 w# n" I& S5 n2023-03-07 14:52:13 Migrate model change to database .../ Z6 U$ Z, e5 m/ H
Operations to perform:
1 U: w2 m2 |& Y# v- Z3 ?' U8 O- ^* H  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" s' P) l4 ~- i5 W) n/ A' ^. c0 @
Running migrations:
: a4 U7 P5 r. _2 k, ^  No migrations to apply./ \/ E- k7 z/ k: ]- L. _4 `

" s% ^1 J" x# _9 y; o( q" X* C) aAfter migration, update builtin role permissions6 v' W; U2 \. t' G- C
  - Update builtin roles
; ^6 X4 b% U' O  m; T& e; Z- P2 y
' w7 j# {: T% y5 ]6. Cleanup Image. E' {0 w+ q, |6 A4 _* X( ]
1 \" p. E0 p; J6 s; V, q' _
7. Upgrade Docker$ O3 _' T2 {1 d- y( ]

3 l0 f) K- ?, }9 h8. Upgrade successfully. You can now restart the program
  c& w1 s  c7 S8 fcd /usr/src/jumpserver-installer-v3.0.3& g/ H' O. W# F2 m; d6 T
./jmsctl.sh start
3 {/ q" y  r( E, I7 T* A6 _( J' Q4 W+ D* g% j5 W) Q
' ]1 B- U, A# G! q
[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh start( w+ x6 S0 J* Y$ H1 w7 C
[+] Running 8/8' @* K) F0 H# ?0 }3 T2 s& G
⠿ Container jms_mysql   Healthy                                                                                                                               0.9s
8 U! ~+ P& B* U3 O% T ⠿ Container jms_redis   Healthy                                                                                                                               0.9s
$ j: X. Y0 X$ S. q  t ⠿ Container jms_core    Healthy                                                                                                                              37.0s5 l" p" T0 t) W) L8 ^4 R6 r, ^" @
⠿ Container jms_web     Started                                                                                                                              38.9s* M4 g% w, v* d0 C" H2 ^% o! L
⠿ Container jms_koko    Started                                                                                                                              38.8s
8 b  f. m$ v6 R! ? ⠿ Container jms_lion    Started                                                                                                                              38.8s* [  V' [1 P) x& n4 S( y
⠿ Container jms_celery  Started                                                                                                                              38.6s! G4 c5 U6 x+ x0 ~
⠿ Container jms_magnus  Started                                                                                                                              38.5s
/ X! l+ N4 _, Q5 W+ P[root@jumpserver3 jumpserver-installer-v3.0.3]#  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 00:43 , Processed in 0.025590 second(s), 25 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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