找回密码
 注册
查看: 752|回复: 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+ H! u$ Z7 @5 l( B
#
$ }8 d! ^" ^: p) @8 K, O3 [+ A
VERSION=v3.0.3* ^, \, U7 ]0 M$ Y+ w$ g, u+ H
DOWNLOAD_URL=https://resource.fit2cloud.com
' Z8 A+ y) s# g- H/ `$ T( ?( }! i( L; A
function install_soft() {- d4 l' H! R9 M! X8 C
    if command -v dnf > /dev/null; then
: O7 D  e+ D9 F9 @+ ?0 h! y: N      dnf -q -y install "$1"9 N0 N9 |# ?& @. h  \$ u
    elif command -v yum > /dev/null; then
3 }$ ]& d8 E. Z- \9 a      yum -q -y install "$1"
9 ]* B0 q. u$ w! U# w" E: K    elif command -v apt > /dev/null; then
; n2 H( o1 [5 F! A8 c      apt-get -qqy install "$1"- x; }" E- [4 |. J! Y1 r( }/ [
    elif command -v zypper > /dev/null; then
7 z3 \: x0 r- R      zypper -q -n install "$1"% g& b' B# y- J: y( Q
    elif command -v apk > /dev/null; then) g( E" C( U$ a
      apk add -q "$1"3 c! I' F0 `; ?7 c6 O2 N' r. W) d4 q
      command -v gettext >/dev/null || {
& L/ P1 M/ L/ s      apk add -q gettext-dev python3
9 d& x/ T5 I  h- p& C3 B8 Z( D    }1 D8 W, n4 d3 q' h
    else  h: D% Q0 b0 U
      echo -e "[\033[31m ERROR \033[0m] $1 command not found, Please install it first"
  R7 P6 ?$ z, P8 o1 D+ ~      exit 1; C; ^1 ^! R2 w1 _" G1 |
    fi
9 X3 v& t+ I+ h* r}+ v0 i8 k! v! E+ ~7 D
; Q  t9 d; N+ x# F1 D% M8 h/ e9 Y
function prepare_install() {
7 v$ ~/ ]9 z: b: f2 g, l3 K  for i in curl wget tar iptables; do8 H3 v: X9 T+ `+ L# u
    command -v $i &>/dev/null || install_soft $i
! o4 ]* B! O/ k, w  done
8 F, l) h8 v& x/ |}
% T0 d5 [- `+ _& g  d( Q9 b5 V: |' G- M
function get_installer() {. }, o1 ?+ X$ c5 S6 Q  I
  echo "download install script to /opt/jumpserver-installer-${VERSION}"$ i% d( q0 P' g. D- {
  cd /opt || exit 1
2 l6 m1 ~0 q+ m7 a; f9 r* z9 k  if [ ! -d "/opt/jumpserver-installer-${VERSION}" ]; then
% W0 |+ ^* y* K" ?2 L    timeout 60 wget -qO jumpserver-installer-${VERSION}.tar.gz ${DOWNLOAD_URL}/jumpserver/installer/releases/download/${VERSION}/jumpserver-installer-${VERSION}.tar.gz || {8 B5 N- v9 C5 d1 N) K# q7 t
      rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
7 f7 p% y. U$ h: F+ r3 |      echo -e "[\033[31m ERROR \033[0m] Failed to download jumpserver-installer-${VERSION}"; b& e1 X# i3 m8 B9 S& y
      exit 1
8 a  J' W. ], s6 O0 B$ w% Y    }
- G6 v9 @" \+ u9 ^    tar -xf /opt/jumpserver-installer-${VERSION}.tar.gz -C /opt || {
6 w' f; |$ s0 }. h$ c. o      rm -rf /opt/jumpserver-installer-${VERSION}
) `' s% _% B& ]- ]& Q      echo -e "[\033[31m ERROR \033[0m] Failed to unzip jumpserver-installer-${VERSION}"
6 a% @  [) M9 g. X. H      exit 16 H9 M6 e1 ?! u, H1 W# d1 }
    }
0 `6 s4 j9 h: O$ g1 F1 z' d) C    rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
9 p. r: _# x3 p: f  s* K) t  fi
7 c0 j- B/ p* I% r! U" Y}  o4 z9 p7 H. D! a
/ L& |7 b" u! Z/ N
function config_installer() {
  @% i. G% b! i  R3 q+ u  cd /opt/jumpserver-installer-${VERSION} || exit 1
& A7 M$ g- F5 J- S8 \9 B  sed -i "s/VERSION=.*/VERSION=${VERSION}/g" /opt/jumpserver-installer-${VERSION}/static.env
# P3 k5 Y3 s# r  sed -i "s/# DOCKER_IMAGE_MIRROR=1/DOCKER_IMAGE_MIRROR=1/g" /opt/jumpserver-installer-${VERSION}/config-example.txt
/ Y! P' c5 C' r/ s) ~  E  ./jmsctl.sh install
* r& d+ X! {9 i2 o8 D5 R7 b) i4 L  ./jmsctl.sh start
8 h+ V& {+ a' a}' @- X  R' @* Y
# M' o' u4 y1 p9 x5 O2 b4 m, _
function main(){& o* L0 |' i' f$ m; X
  if [[ "${OS}" == 'Darwin' ]]; then
7 _2 ?2 i- I# n. p; m5 P' O    echo3 C0 m% c7 t7 X9 @0 M* D' y" c
    echo "Unsupported Operating System Error"! c0 `$ v$ p+ i- @5 y2 F
    exit 1
, P% X- g6 u; T- U' {  fi% o1 i* C# @( n% T) O* h8 \
  prepare_install# y% [; x' L+ m& i
  get_installer
/ {$ `* Y3 k5 u3 v/ v& K  z( Y6 s4 i1 h  config_installer6 G) T, ^& ?7 V4 i, C
}; v' l0 z5 A! w
) {, I) V& ^, a  _- }
main
4 k2 x4 ~' U! [) n' w. S, X9 Z, c( L. e; _( a! Q& r

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-7 14:50:18 | 显示全部楼层
cd /opt; L1 K% u7 B, p& Z
wget https://resource.fit2cloud.com/j ... aller-v3.0.3.tar.gz
/ S, F( R1 g( C, V6 W

' h5 j8 J; z/ l9 A6 M, l& u  Whttps://resource.fit2cloud.com/jumpserver/installer/releases/download/v3.0.3/jumpserver-installer-v3.0.3.tar.gz: L% P. Q9 J  t0 _8 z
tar -xf jumpserver-installer-v3.0.3.tar.gz. a2 e7 ^- R2 r  y& \* b$ r: v3 ]
cd jumpserver-installer-v3.0.3! X& m' z$ S6 i8 [% R7 b

8 [# h5 s; f: L& k8 [1 C$ v3 L6 C0 k4 i5 K  z+ f1 h. @
./jmsctl.sh upgrade
, Q' X) Y: D# g# P4 G$ {8 E
) Z( {/ O6 g) f0 v1 O# 启动 JumpServer 服务8 J) ?" B& t9 }: V
./jmsctl.sh start
  {4 i& E! h; s$ U6 p# w, V8 Q' v. @

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2023-3-7 14:53:50 | 显示全部楼层
[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh upgrade
8 q7 O/ `: |6 S9 \2 ~% T8 U* }Are you sure you want to update the current version to v3.0.3 ? (y/n)  (default y): y4 |  k$ `' F4 M* y* E9 [, ?

3 x7 d+ [- e' q. a8 h8 N1. Check Configuration File
5 z7 n* }6 u! X+ y- h% T' LPath to Configuration file: /opt/jumpserver/config! s( m. i6 ~- J+ d2 A; }- S( C
/opt/jumpserver/config/config.txt        [ √ ]2 [- _; Q# r. e& j7 e
/opt/jumpserver/config/core/config.yml   [ √ ]
( g7 L: j0 f7 w3 W& h/opt/jumpserver/config/koko/config.yml   [ √ ]
0 P: Y8 Y1 k* A) s4 T/opt/jumpserver/config/mariadb/mariadb.cnf       [ √ ]
& N: x6 ]8 H* Y- t. R+ M/opt/jumpserver/config/mysql/my.cnf      [ √ ]  P/ ?0 P. t; @+ K: ^* ~/ ]5 e
/opt/jumpserver/config/nginx/lb_http_server.conf         [ √ ]/ {' H  @1 O  I- L+ |; T  U) d- [
/opt/jumpserver/config/redis/redis.conf          [ √ ]
$ Q& Y3 y8 r2 m7 }( J5 p& a. u. }/opt/jumpserver/config/nginx/cert/server.crt     [ √ ]7 F; ?! q  X& h7 {7 M7 v1 l! P
/opt/jumpserver/config/nginx/cert/server.key     [ √ ]9 O3 v9 F% r1 Q) G: v
complete
9 R4 p% Q4 ]9 Y* ?( ~4 `& M; e" ~* d5 v& U6 Q
2. Loading Docker Image
& B0 g$ s& g) n$ c- r3 x8 c9 L# M[jumpserver/redis:6.2]
, }3 ~" ~7 ^' ]& C3 s6.2: Pulling from jumpserver/redis
& H- U6 n& c) KDigest: sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a68609
8 l5 d) K( |9 B" U$ fStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
: C4 s% ]) D2 v+ V. Iswr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.27 f1 F* J! t  V$ }# Q7 y4 E
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
1 R: h1 w- C7 eUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis@sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a68609
8 U  U0 y2 N: l/ E0 |
. U* Q4 a* K3 k) P% T" n- }9 t[jumpserver/mariadb:10.6]
+ d" e( y' A  r( T' N10.6: Pulling from jumpserver/mariadb
$ M* V2 b  ~- o4 V3 Q' K; hDigest: sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b
9 f2 T! [( N8 O% d, q* |Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
7 _3 r# h4 p' X4 z% T% e* m# r- Y' Aswr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
1 K, P4 Z& Q: `- s& O# Y3 zUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
) K" l* ?( L6 l  {! c$ |Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb@sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b3 [4 T1 }' N+ Y( {4 w: A3 F, b8 c

8 P8 E/ k+ V7 S+ m$ d' e2 W' E5 S) K8 U[jumpserver/core:v3.0.3]
" m" Q1 `- \8 ^6 _' f! E5 yv3.0.3: Pulling from jumpserver/core
* v: u& F# U8 h' lDigest: sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74" r4 w8 j! t: H$ s: ?
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
4 i# n* }, i0 |6 ]5 o1 W$ b( @swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
4 H% w% x0 P  {- ]7 t9 m( `4 f; VUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.31 ?8 O5 ^, _: @! t) I
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core@sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74: p) E$ [4 T4 T3 L" z& V* g
  S) v3 n3 M' E3 N- v
[jumpserver/koko:v3.0.3], F6 T* O7 Y2 i& v0 o
v3.0.3: Pulling from jumpserver/koko$ z- z/ O' P  s# X2 `# n
Digest: sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1* w2 J# A( m( k+ W8 X, U8 t0 H
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3/ L4 Y! Y: D, h/ x" t# s% v
swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3- K8 I. a# k1 e
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3! ^3 V% Q2 w7 V3 Z1 d
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko@sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1. W6 `0 Z0 O! A4 X. d% k
; m! L4 I* \4 d' R% G
[jumpserver/lion:v3.0.3]' L1 n/ l. B, w
v3.0.3: Pulling from jumpserver/lion. c1 q7 v9 j4 x/ Q  i) H) Z
Digest: sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c, v0 E& |6 M& i4 j" v$ j7 h/ H
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
2 j! ~7 n  W$ O7 j& t8 dswr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
/ F; K/ [/ L* B2 _$ WUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
) C9 n. L4 {8 s$ `, z- k& Q% G- eUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion@sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c4 W( j8 k& h. \
0 i( A' O$ n! r  e
[jumpserver/magnus:v3.0.3]
9 G# S  W* @0 d! N; _  `v3.0.3: Pulling from jumpserver/magnus; i" k; M" Z) N1 L3 e
Digest: sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7
% `9 V3 `1 C! D' i; S( u% j, C7 QStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3
* K* e5 q5 D) ?- A& x) B5 sswr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.30 v6 W. E1 ~# Y8 J$ F) _% r  u8 ?
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.30 j0 m$ {( B" [7 v# _, j
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus@sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7) _1 k5 d) n, x+ U2 z7 _3 v% C
% H+ _" e3 t8 }
[jumpserver/web:v3.0.3]- S! {1 l- N2 x* m
v3.0.3: Pulling from jumpserver/web
. X4 @% x9 C( V7 `; T: L$ P" RDigest: sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43/ b+ T. _$ K( P/ r6 V
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3: r6 l1 H7 ?: Y; S* x
swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3. A/ y6 o5 c( H. V
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3
( {9 F% f/ N# P( k8 FUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web@sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43; V6 g5 `" K. L$ F

  L  g! n2 U5 G9 _- wcomplete6 K; l- a" Q) w+ Y' ^; b
3 k3 a5 Y: R8 D# B, x' y
3. Backup database% D  N% `+ R9 g2 y7 n7 o
Backing up..., ~1 G" I7 y7 ^- O2 L7 E
[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
8 y6 g2 p8 ^! h- N+ B, T. S; h, V
1 e: C# R2 h( u' I! E$ q% |4. Backup Configuration File0 O: A6 Z, z0 U% a
Back up to /data/jumpserver/db_backup/config-v3.0.3-2023-03-07_14:51:19.conf
9 ~  n$ x# Z0 q" e4 |7 l4 h  V# g( L2 @9 }6 l# [3 W$ p' w
5. Apply database changes
$ e% e. z  V, O1 gChanging database schema may take a while, please wait patiently8 @0 _7 G. G2 j
Detected that the JumpServer container is running. Do you want to close the container and continue to upgrade? (y/n)  (default y): y
1 Q8 B7 H* C% w7 J7 q
1 p; [9 @' @2 Q- C% C+ h1 l[+] Running 1/1. n, j4 i+ A! j- p
⠿ Container jms_core  Stopped                                                                                                                                 0.5s
9 R4 k/ N# ?" r+ c- F- h  e% Q[+] Running 1/1% @' d0 X( z- A7 E2 r
⠿ Container jms_koko  Stopped                                                                                                                                13.7s& [, d- f4 E) m( K7 V
[+] Running 1/1
+ ]9 g5 X: [5 _. z: l2 y ⠿ Container jms_lion  Stopped                                                                                                                                10.4s
3 m1 A5 Y1 C& }' J, c4 g( e[+] Running 1/1) |% [  q: z( f7 p. b
⠿ Container jms_magnus  Stopped                                                                                                                              10.5s
4 ^1 Y4 N$ O, h. B[+] Running 1/1! [; y: t- \1 _8 \# B7 d
⠿ Container jms_web  Stopped                                                                                                                                  0.4s
5 h7 Y8 t" N3 B% q; X3 D[+] Running 1/17 l' _4 ]' k) M7 Z2 j
⠿ Container jms_celery  Stopped                                                                                                                               0.6s+ p5 c, c. F- l, Y: `
[+] Running 1/1  E5 d  j9 N1 k& q! D0 ?
⠿ Container jms_core  Removed 0.2ss+ P- p9 R, b) E- y  z% K! J
[+] Running 1/07 C2 N* A. g% |; a5 D
⠿ Container jms_koko  Removed 0.1s
; h+ y3 c; R9 J1 T6 T* y[+] Running 1/0
6 m8 h2 K! ~: p/ J, h ⠿ Container jms_lion  Removed 0.0s
& O3 I2 G. ^/ x. y- h0 p[+] Running 1/0# ?9 Y) L/ @6 t3 K% H  _- E, a4 c
⠿ Container jms_magnus  Removed 0.0s" H6 S7 O: l/ N% Z- `) C# I
[+] Running 1/0- B7 p5 w+ Q& V0 L# ^
⠿ Container jms_web  Removed 0.0s3 w$ j( {- S% Q' l
[+] Running 1/1) S: |9 t5 t2 m% \- F, V
⠿ Container jms_celery  Removed 0.5ss
7 M  C% Q$ a4 t+ X& q  v
2 L1 T; W/ D3 j- }[+] Running 3/3; K5 n/ G1 \8 a# z
⠿ Container jms_redis  Healthy                                                                                                                                0.8s7 x' A0 a" F* C( x) u
⠿ Container jms_mysql  Healthy                                                                                                                                0.8s
$ W- g2 c6 R8 u' j5 @( G ⠿ Container jms_core   Started                                                                                                                                1.4s4 }% i3 j# M2 D" ~4 a9 w- E
2023-03-07 14:52:12 Collect static files
( a4 E2 V* d' ^4 b8 o7 ], Z2023-03-07 14:52:13 Collect static files done
% b, `, X% p8 F1 t* O! f  r2023-03-07 14:52:13 Check database structure change ...
# u$ G- e; c$ s6 \. i5 c2023-03-07 14:52:13 Migrate model change to database ...
" O8 u  c( m; h$ g6 yOperations to perform:, P7 E! q9 i" [1 b8 s
  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, users1 i3 u/ t2 d# i6 }* i  v6 R
Running migrations:
1 l1 w. v/ A7 A9 E8 Y0 A% M: _  No migrations to apply.5 C# b+ u: Z5 |3 j9 g

0 F* P- k# A1 NAfter migration, update builtin role permissions( e0 b0 Y. D( e- V& x/ \
  - Update builtin roles" K- u; v2 i5 `% {* L
+ L2 R0 d  c4 f4 m- E8 u
6. Cleanup Image
" H; N+ {, t8 e5 r( u
% _  t3 d3 x7 ^" [7 _2 ?! Y* [$ W7. Upgrade Docker
, O; w2 d2 Q: }' c  ~5 |) H" J' a- l; b( t
8. Upgrade successfully. You can now restart the program
; B2 I6 i1 {- h. bcd /usr/src/jumpserver-installer-v3.0.3  [9 k/ g) z4 |! ~. h
./jmsctl.sh start
4 M. o( z. n& S2 q+ B' B
# N* t4 B8 _$ f0 t8 }
  E) ~/ M' g+ i0 G& e6 e& L[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh start2 ]* r# J" r" z
[+] Running 8/8
% n0 e3 m, T/ ~4 ~0 S/ C7 o ⠿ Container jms_mysql   Healthy                                                                                                                               0.9s2 Q0 v1 j! J  n6 v
⠿ Container jms_redis   Healthy                                                                                                                               0.9s1 D) J$ @! p6 D& }' J6 y
⠿ Container jms_core    Healthy                                                                                                                              37.0s
8 ?2 H2 V4 P9 D! W& [7 w# S ⠿ Container jms_web     Started                                                                                                                              38.9s
  o0 g" M5 y' ^1 _4 J" g8 |9 Q ⠿ Container jms_koko    Started                                                                                                                              38.8s9 ^1 f$ n; t! _; |6 u$ J
⠿ Container jms_lion    Started                                                                                                                              38.8s: w4 b0 Y% D( E: ]* V
⠿ Container jms_celery  Started                                                                                                                              38.6s
. d# |3 P7 m7 p ⠿ Container jms_magnus  Started                                                                                                                              38.5s( p' U" |. B* \. J7 k6 z- P7 p1 V2 q; R
[root@jumpserver3 jumpserver-installer-v3.0.3]#  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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