易陆发现互联网技术论坛

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

jumpserver安装步骤

[复制链接]
发表于 2023-3-1 19:00:05 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 2 金钱 才能浏览
 楼主| 发表于 2023-3-7 14:07:45 | 显示全部楼层
#!/usr/bin/env bash
: q$ M# Q& C" e, Y6 J#
8 ^  P* u3 F( T% N% r5 Y( I5 q9 {; w. b7 E' C3 [
VERSION=v3.0.38 U& `. y% l4 ^# f
DOWNLOAD_URL=https://resource.fit2cloud.com
3 i$ W: z" P9 }  V
, k! A8 Y& I( Y# r* wfunction install_soft() {! [  G1 M7 r# I. Q& W; t' l  q
    if command -v dnf > /dev/null; then
" ~) q6 @+ I$ ?7 f( G7 T      dnf -q -y install "$1"
( q" {" P. i4 C1 R& C( X    elif command -v yum > /dev/null; then
0 f$ ^; |( x) @$ i& ~      yum -q -y install "$1"
/ M0 h4 i9 _4 b4 j! H    elif command -v apt > /dev/null; then3 _; B( ^$ f' b" V6 u% ]$ f
      apt-get -qqy install "$1"$ v" M* T2 p& z# k& H; t' a' s
    elif command -v zypper > /dev/null; then
! f! I, ^4 h: B& E' e: k: W      zypper -q -n install "$1"
: j* H% I: C2 n4 r  q    elif command -v apk > /dev/null; then3 q  P0 |% t' G  t; y. D$ w. F
      apk add -q "$1"
7 H5 F" M0 k2 c      command -v gettext >/dev/null || {
8 }7 h( n& B, u      apk add -q gettext-dev python34 [3 s) X/ P/ B. f3 l0 l
    }* R- L) K/ s; V; `$ X1 `6 m
    else
( w/ U$ t0 v) q3 h2 i% U      echo -e "[\033[31m ERROR \033[0m] $1 command not found, Please install it first"6 M0 {2 O4 U) `' r0 S9 `$ K
      exit 1
* N  q0 E, I- ^3 b* V2 s    fi
2 Z- }( G0 R$ r3 h6 E3 d# W! f, b}+ p0 ~; c$ k  N. J

" R9 ~! B8 s0 _6 }% H0 Ffunction prepare_install() {
3 D; `# _, S3 K# P/ d  for i in curl wget tar iptables; do
! O! N5 ]2 l1 P0 N6 V8 K& L9 |" O    command -v $i &>/dev/null || install_soft $i& F) T, a4 R$ {# G0 B7 _( |7 n9 R
  done
$ ?9 u! P" S+ _1 s- z1 J  N}
" d. f# T/ s# B, S2 N- T! c# `0 r) k, ^3 s2 N
function get_installer() {3 X  H  E$ n1 n) J: s3 K
  echo "download install script to /opt/jumpserver-installer-${VERSION}"0 w5 z5 E% C# E
  cd /opt || exit 1( V5 B1 j: c( [3 v' j
  if [ ! -d "/opt/jumpserver-installer-${VERSION}" ]; then
# d# I4 E; _8 ?5 t; a    timeout 60 wget -qO jumpserver-installer-${VERSION}.tar.gz ${DOWNLOAD_URL}/jumpserver/installer/releases/download/${VERSION}/jumpserver-installer-${VERSION}.tar.gz || {
$ k% w/ X$ r  T' I$ Z) p( ^$ z0 ~4 Z      rm -f /opt/jumpserver-installer-${VERSION}.tar.gz$ S# H4 a) m' c3 _9 E0 Q. J
      echo -e "[\033[31m ERROR \033[0m] Failed to download jumpserver-installer-${VERSION}"7 `5 `1 `% r/ k2 j, O
      exit 1
/ n2 @/ f9 W. Z& L    }
- n: t% e6 j' w3 Z- k    tar -xf /opt/jumpserver-installer-${VERSION}.tar.gz -C /opt || {
8 {3 T) G" @3 e0 H% V; p# i      rm -rf /opt/jumpserver-installer-${VERSION}0 f/ _) w* X, k6 H# J4 [1 d
      echo -e "[\033[31m ERROR \033[0m] Failed to unzip jumpserver-installer-${VERSION}"
9 n" r# I; e/ @3 ~, l% J9 u7 ~      exit 1# B2 X9 c  I0 l4 ^) `7 M
    }
% {7 z7 e* r0 |- x* [4 w5 I    rm -f /opt/jumpserver-installer-${VERSION}.tar.gz
; K$ g: u8 e% d: H  fi! U. c+ W! ~& r. N) \7 e/ |
}
  `; b; l6 p/ I1 x) e4 t/ o
5 V3 E/ \% W" ^! G! S' _function config_installer() {. E# C4 c. R2 y" t0 B+ p$ Z
  cd /opt/jumpserver-installer-${VERSION} || exit 1. x! _, @4 C5 _3 L  a! r$ T
  sed -i "s/VERSION=.*/VERSION=${VERSION}/g" /opt/jumpserver-installer-${VERSION}/static.env
! F8 J) J! d+ ?1 a, c9 s  sed -i "s/# DOCKER_IMAGE_MIRROR=1/DOCKER_IMAGE_MIRROR=1/g" /opt/jumpserver-installer-${VERSION}/config-example.txt
7 I# _' C: b& J' V( w! Q% `  ./jmsctl.sh install9 ?0 F8 a& ~$ D
  ./jmsctl.sh start
. n/ w# d6 p  y1 n0 x}1 z/ |* L. R+ c! [: t+ v
: E% S* _2 X3 f% A9 Y, C
function main(){: ^* C/ k5 `! A) g
  if [[ "${OS}" == 'Darwin' ]]; then# n: P1 X0 T9 g) `3 d9 ?2 b  q# P- X
    echo$ y% Q3 w0 s+ c# K) R
    echo "Unsupported Operating System Error", O  Y( ?0 ]2 G& k% H. d7 |. p: h
    exit 1" D, ~$ W( G6 f, h
  fi
8 e0 k  \1 o- g0 b" H8 n$ p' Q  prepare_install, C  q/ a' z* d6 x+ A1 r9 i2 g
  get_installer
- ~* I4 q+ C9 |  config_installer
8 W& ^, y0 B5 S2 M7 k* y}
8 Q! g3 r5 T6 U5 I# t
- L0 b! q- ]& k9 e4 O* @main
: A9 @8 P6 z4 Q6 j! E1 y
+ H" X, R1 y3 u
 楼主| 发表于 2023-3-7 14:50:18 | 显示全部楼层
cd /opt7 N  p0 u- D% l/ M- x
wget https://resource.fit2cloud.com/j ... aller-v3.0.3.tar.gz
7 D, Z. l: ^' e1 U7 d

. y7 y* t: M- O* m+ ~# h& Thttps://resource.fit2cloud.com/jumpserver/installer/releases/download/v3.0.3/jumpserver-installer-v3.0.3.tar.gz/ t- v7 Y* a3 T" _
tar -xf jumpserver-installer-v3.0.3.tar.gz8 f9 x- A. r8 m5 d7 n9 R! M# e
cd jumpserver-installer-v3.0.3
/ p4 ~) p' q6 `; D3 N! I' ]2 K4 G# w: X/ E
" a* z( u  o8 c# c1 p8 l& ]1 y9 h
./jmsctl.sh upgrade/ `4 `/ @. F, I( U! H7 k

/ ~8 ^0 V4 X) q4 h9 R4 ]# 启动 JumpServer 服务
# N4 ~. D% h. V./jmsctl.sh start
/ U/ b' m4 d3 y( P/ A/ G7 k' G
/ d* B* k( U; e
 楼主| 发表于 2023-3-7 14:53:50 | 显示全部楼层
[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh upgrade
" O) w+ w/ p) ]8 R( pAre you sure you want to update the current version to v3.0.3 ? (y/n)  (default y): y" N2 n8 h& Z! y5 m% X- d

, p' Q% w$ t+ r1. Check Configuration File. V3 S. O+ b1 z6 R4 |0 v
Path to Configuration file: /opt/jumpserver/config* u* |$ [/ O7 |3 W1 ?# }
/opt/jumpserver/config/config.txt        [ √ ]
/ |+ W; n/ ]+ l7 Y9 k/opt/jumpserver/config/core/config.yml   [ √ ]
( z1 M  q6 G# Y  ~* v  H& f0 F/opt/jumpserver/config/koko/config.yml   [ √ ]/ B: o2 k! v( m8 d6 c; m
/opt/jumpserver/config/mariadb/mariadb.cnf       [ √ ]
  ?* ^$ X9 O- t5 j" i% Q/opt/jumpserver/config/mysql/my.cnf      [ √ ]3 n8 M: z# F$ g: W' \6 E
/opt/jumpserver/config/nginx/lb_http_server.conf         [ √ ]
2 O4 }9 A6 F  B) p/opt/jumpserver/config/redis/redis.conf          [ √ ]
. `: e/ q( |6 N) s/opt/jumpserver/config/nginx/cert/server.crt     [ √ ]7 v% z( U5 W0 y
/opt/jumpserver/config/nginx/cert/server.key     [ √ ]- ?. a, J- x, \1 T# {
complete- q  ^* V" {0 @6 h! {1 V% x1 z' q

# f5 u" `! p5 t0 w9 U4 H2. Loading Docker Image+ H, |/ h+ e5 v6 W/ |
[jumpserver/redis:6.2]4 d5 y+ H/ i+ S' I7 C
6.2: Pulling from jumpserver/redis
+ Z- f3 w- g$ U& E6 }+ x: U2 gDigest: sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a68609! j# _3 _& `0 O. g8 k. }. o
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2
5 _. A! Z6 z- W+ `' rswr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2" t, ]3 d* X2 \- z1 C9 F
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis:6.2. ~- e5 K! q! F# g. X
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/redis@sha256:7a9547085a1e837ec83d7452dd1c18e2e25beae9f25719aabeb4deaaa9a686097 u- S! ?3 r; U  l; F) v

, |: f& z- p9 A8 s0 `5 q6 T[jumpserver/mariadb:10.6]+ R5 x5 V5 \4 Z' v( ~) z
10.6: Pulling from jumpserver/mariadb; s0 [! a, [& U8 ~% t
Digest: sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b
( Y. C. ?# E% l$ I# [8 hStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
: f, d" p/ v) }: J6 X- z7 ^9 |& {  ^8 Cswr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
5 t: [( Y3 N' p6 j5 \  s% zUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb:10.6
% \8 f/ M: S! {. _3 v' G- B- zUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/mariadb@sha256:1a80e751a3b22919f9ccd94fa8a30782e495ee1326e3a35d943b2a54dff3e89b0 s$ p& ?! `' q( m
. z: V/ A3 ~$ ]% C5 d. _
[jumpserver/core:v3.0.3]$ b6 S9 A/ s. B7 Y
v3.0.3: Pulling from jumpserver/core# e$ a4 @! x5 `2 \0 V5 S0 @8 U
Digest: sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74
: c2 q3 w5 C+ m9 I# X5 GStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
4 m" q- \1 U1 W7 ?& Yswr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
1 O2 p4 w/ c' pUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core:v3.0.3
, z  _( {. M7 z# |! _) {Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/core@sha256:dab22df110432bc0fe95d0ebaefcf9fda4e46a14d4507991341d5e72c613ad74
$ z4 H* D$ @; |) n  S- w/ t* M: y& X8 t4 E6 Y9 Q3 a
[jumpserver/koko:v3.0.3]' A8 ^7 n. o) d, L7 V5 |$ T
v3.0.3: Pulling from jumpserver/koko
- ?% O5 \+ v% s) JDigest: sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1/ ~+ U' D% i" M. @
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
$ U( [% B2 |2 V& V  ~  k; Mswr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
$ I) i5 h. h: {( k9 sUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko:v3.0.3
+ f# h& L% X8 V8 pUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/koko@sha256:c8724426c635b06b060f139ec1a89225ba76168b91f4c744a6b6219db66925f1
2 K5 i. ?: w& [" g
3 J! W# v! D% l8 I[jumpserver/lion:v3.0.3]6 P3 \# B; @2 y. p
v3.0.3: Pulling from jumpserver/lion
' q6 L* L* e, V0 I, j) ]8 J9 HDigest: sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c
! ]5 e  M# R$ {: g+ h1 ]: a; PStatus: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3+ {  e1 Z5 ?: `; x" i5 m3 u" B- `
swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
8 j+ M0 T' X0 fUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion:v3.0.3
4 p) U& ?- B- W. B8 oUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/lion@sha256:5bdbef13a426a2ba00ddb304eb2a8763cbb75cdcd6ea7a5f1301225c4c0b8e9c) ^) W9 P3 F$ b4 ^6 N
% r$ s' \4 I& ~8 x
[jumpserver/magnus:v3.0.3]% t4 K5 E5 U+ H: F9 q0 L
v3.0.3: Pulling from jumpserver/magnus3 n9 w6 \2 d$ d
Digest: sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7+ Z# L) d" c' _  Y1 \2 [1 y
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3
# ?, w' D5 \. A/ P. Xswr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3! T5 A% k) Z7 @% t+ B+ B
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus:v3.0.3% K3 P2 S1 c( @4 q
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/magnus@sha256:5f04be4dd5d20711939662c03474db0e218900a84ebd2f771716f6601e4e80e7/ X: }+ r6 g" F) }5 p+ @! Q

3 ?& ?7 l  k& T: |, m+ p[jumpserver/web:v3.0.3]
$ b: e$ Z& D- `$ E, J) U" Cv3.0.3: Pulling from jumpserver/web( X; Q9 {/ u! \  n' H3 G( v+ f
Digest: sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43+ c  W5 F: F' i4 F+ J8 i
Status: Downloaded newer image for swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3  e/ k9 v/ \+ x$ l
swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.34 e2 y# q4 Y$ u7 f! c6 G
Untagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web:v3.0.3
6 K  I; c% N4 h4 _3 S9 }' yUntagged: swr.cn-north-1.myhuaweicloud.com/jumpserver/web@sha256:9d6fa5942a8cccd40f4eb62087bb1dd551c24e7ee350c7fd6c7c22932b405e43- `# _# V2 z# y
9 V' Y/ ^# Z; M
complete$ ?: I) G! B  ?$ {, H
3 x* J$ F9 V& R5 h
3. Backup database2 Y4 F" F( g- j, e
Backing up...
1 O4 w/ H# Z& K6 R* p[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& A4 J( Q; l+ B7 H+ \; m$ P
: u" K$ w' A+ g: m* J9 r- r; \
4. Backup Configuration File, s" q6 A/ X7 C3 {! R6 W
Back up to /data/jumpserver/db_backup/config-v3.0.3-2023-03-07_14:51:19.conf
) Z! E% A* k; {& z% J
3 l7 D8 j. S; \5. Apply database changes
1 Y# N3 w) @- TChanging database schema may take a while, please wait patiently
  q; ?9 O; U+ [$ k% o3 L" k- [' Y1 _Detected that the JumpServer container is running. Do you want to close the container and continue to upgrade? (y/n)  (default y): y9 t: j+ y7 J2 W; I+ ~
/ c7 {( Z2 h0 L8 j' `
[+] Running 1/1" g3 F( w/ a6 p
⠿ Container jms_core  Stopped                                                                                                                                 0.5s
) u' @; b) }/ W, w[+] Running 1/1
: z( z1 }& A7 D4 c1 X" x/ P2 n ⠿ Container jms_koko  Stopped                                                                                                                                13.7s2 q, p0 u/ A, E: g: R% i' o- T& W
[+] Running 1/1& c. G- D! _$ y& _4 V/ V1 R
⠿ Container jms_lion  Stopped                                                                                                                                10.4s
9 n. h; _/ @) y7 w# ][+] Running 1/1
$ Z% @/ ?7 a; _% q3 d9 \" l ⠿ Container jms_magnus  Stopped                                                                                                                              10.5s
/ w% B7 g  v: O1 b0 h8 `8 J[+] Running 1/1
- G. K7 L0 Y/ V' p, y5 B ⠿ Container jms_web  Stopped                                                                                                                                  0.4s
+ \' M, u+ t9 U7 V& m4 |% z[+] Running 1/1/ E# g* c0 z( G2 q: ]6 U. k
⠿ Container jms_celery  Stopped                                                                                                                               0.6s: I8 W6 B! f2 v+ Y) u5 F
[+] Running 1/1
. B1 y# l, t, u1 `, f0 g1 ?  h ⠿ Container jms_core  Removed 0.2ss
" M; B0 p0 ~" z, |* l1 K$ L4 q[+] Running 1/0( a! c( L; z& {) C
⠿ Container jms_koko  Removed 0.1s
7 f. z6 X1 H+ e' q, ~[+] Running 1/0! s  T/ }5 f& y0 ~, {8 ]
⠿ Container jms_lion  Removed 0.0s
' p& I$ ~$ V% e& a3 e[+] Running 1/0
, M/ ]; l( P, q9 R0 @ ⠿ Container jms_magnus  Removed 0.0s# Z* o6 N$ i: l& j% ?) J' w
[+] Running 1/0" m1 K6 A; u  Q1 I
⠿ Container jms_web  Removed 0.0s( u2 Z( V9 F6 H8 I& S
[+] Running 1/1
9 w* ^9 X( C8 d' h8 F ⠿ Container jms_celery  Removed 0.5ss) j3 S/ N+ Q; F/ `

+ _) x; V% `) L[+] Running 3/38 c! ?& W" I" t
⠿ Container jms_redis  Healthy                                                                                                                                0.8s* L; [# M  M5 l- C0 u$ ~5 Y
⠿ Container jms_mysql  Healthy                                                                                                                                0.8s$ G; E3 `3 |/ ~# |9 p- \- e
⠿ Container jms_core   Started                                                                                                                                1.4s
- C' x* ]3 M$ |- ^2023-03-07 14:52:12 Collect static files/ A. U- y4 z- N! t6 f( ]  U$ q; r# ~
2023-03-07 14:52:13 Collect static files done" t5 {9 y- A) s4 G& X! e" u
2023-03-07 14:52:13 Check database structure change ...' n" W2 q; D- Y
2023-03-07 14:52:13 Migrate model change to database ...$ b* q! l% W/ d1 i: |, I0 m
Operations to perform:+ a$ ^: G- X' e9 ^
  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
* T# r, F' c% a* m  T- `  rRunning migrations:" u+ S  G& Y: _" V
  No migrations to apply.2 E9 ?; q! z. p! j
2 k! t# ]2 N) Z+ a9 t1 f/ S! E
After migration, update builtin role permissions
  a' g" L9 R* K; k/ X  - Update builtin roles
/ j7 U4 a- A9 |2 ]6 Q9 n5 d* R# x% [# b1 s- T( Y; N
6. Cleanup Image  K! k1 ^9 \8 V7 F

) k; K. }, Z! Y# H7. Upgrade Docker
9 D: i  ?: i3 k* M
& [$ R4 `: \' ?( N; F( }8. Upgrade successfully. You can now restart the program2 C# B0 B6 N, f  H' g
cd /usr/src/jumpserver-installer-v3.0.33 o% ]' O+ u" _6 `1 @5 C: p6 k
./jmsctl.sh start
# D0 L5 b3 |" W( O- i% T$ p/ C8 E  u' g( ~5 F& r

7 h+ U& {! @6 R$ S[root@jumpserver3 jumpserver-installer-v3.0.3]# ./jmsctl.sh start
- o8 h' p0 N0 @& B[+] Running 8/8
7 ?7 o! F# y" n% C; p; W& B ⠿ Container jms_mysql   Healthy                                                                                                                               0.9s
6 M: ~$ X: i1 a7 J: ` ⠿ Container jms_redis   Healthy                                                                                                                               0.9s/ @# g8 b: B7 z- q6 {1 F- h
⠿ Container jms_core    Healthy                                                                                                                              37.0s% A6 [  _$ C* a  C; w
⠿ Container jms_web     Started                                                                                                                              38.9s
* `. r! l* o2 {8 _5 E& A ⠿ Container jms_koko    Started                                                                                                                              38.8s
  Y5 N. n( P, m- Y6 d ⠿ Container jms_lion    Started                                                                                                                              38.8s8 d6 N+ Z5 V. T) G- _/ b
⠿ Container jms_celery  Started                                                                                                                              38.6s2 y* A2 {0 Z% V
⠿ Container jms_magnus  Started                                                                                                                              38.5s7 S( e6 i& P: Z  e/ i* h/ g9 d
[root@jumpserver3 jumpserver-installer-v3.0.3]#  
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

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

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

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

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

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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