跳转至

了解飞致云旗下开源产品

Docker Desktop⚓︎

环境要求

OS OS Version Soft Requirement
Windows >= 10 Git Docker Desktop
macOS >= 10.14 Git Docker Desktop

部署说明⚓︎

先正确安装 Git 和 Docker Desktop

# Run from Git Bash
git clone https://github.com/jumpserver/Dockerfile ~/jumpserver
cd ~/jumpserver
cp config_example.conf .env
vi .env
# 版本号可以自己根据项目的版本修改
Version=v2.28.8

# 构建参数, 支持 amd64/arm64
TARGETARCH=amd64

# Compose
COMPOSE_PROJECT_NAME=jms
COMPOSE_HTTP_TIMEOUT=3600
DOCKER_CLIENT_TIMEOUT=3600
DOCKER_SUBNET=192.168.250.0/24

# 持久化存储
VOLUME_DIR=/d/jumpserver  # 挂载 Windows D 盘 jumpserver 目录 D:\jumpserver, 自行替换

# MySQL, 自行修改 DB_PASSWORD
DB_HOST=mysql
DB_PORT=3306
DB_USER=root
DB_PASSWORD=nu4x599Wq7u0Bn8EABh3J91G
DB_NAME=jumpserver

# Redis, 自行修改 REDIS_PASSWORD
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=8URXPL2x3HZMi7xoGTdk3Upj

# Core, 自行修改 SECRET_KEY 和 BOOTSTRAP_TOKEN
SECRET_KEY=B3f2w8P2PfxIAS7s4URrD9YmSbtqX4vXdPUL217kL9XPUOWrmy
BOOTSTRAP_TOKEN=7Q11Vz6R2J6BLAdO
DEBUG=False
LOG_LEVEL=ERROR

##
# SECRET_KEY 保护签名数据的密匙, 首次安装请一定要修改并牢记, 后续升级和迁移不可更改, 否则将导致加密的数据不可解密。
# BOOTSTRAP_TOKEN 为组件认证使用的密钥, 仅组件注册时使用。组件指 koko、guacamole

git clone https://github.com/jumpserver/Dockerfile ~/jumpserver
cd ~/jumpserver
cp config_example.conf .env
vi .env
# 版本号可以自己根据项目的版本修改
Version=v2.28.8

# 构建参数, 支持 amd64/arm64
TARGETARCH=amd64

# Compose
COMPOSE_PROJECT_NAME=jms
COMPOSE_HTTP_TIMEOUT=3600
DOCKER_CLIENT_TIMEOUT=3600
DOCKER_SUBNET=192.168.250.0/24

# 持久化存储
VOLUME_DIR=/opt/jumpserver

# MySQL, 自行修改 DB_PASSWORD
DB_HOST=mysql
DB_PORT=3306
DB_USER=root
DB_PASSWORD=nu4x599Wq7u0Bn8EABh3J91G
DB_NAME=jumpserver

# Redis, 自行修改 REDIS_PASSWORD
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=8URXPL2x3HZMi7xoGTdk3Upj

# Core, 自行修改 SECRET_KEY 和 BOOTSTRAP_TOKEN
SECRET_KEY=B3f2w8P2PfxIAS7s4URrD9YmSbtqX4vXdPUL217kL9XPUOWrmy
BOOTSTRAP_TOKEN=7Q11Vz6R2J6BLAdO
DEBUG=False
LOG_LEVEL=ERROR

##
# SECRET_KEY 保护签名数据的密匙, 首次安装请一定要修改并牢记, 后续升级和迁移不可更改, 否则将导致加密的数据不可解密。
# BOOTSTRAP_TOKEN 为组件认证使用的密钥, 仅组件注册时使用。组件指 koko、guacamole

cd ~/jumpserver
docker-compose -f docker-compose-network.yml -f docker-compose-redis.yml -f docker-compose-mariadb.yml -f docker-compose-init-db.yml up -d
docker exec -i jms_core bash -c './jms upgrade_db'
docker-compose -f docker-compose-network.yml -f docker-compose-redis.yml -f docker-compose-mariadb.yml -f docker-compose.yml up -d
cd ~/jumpserver
docker-compose -f docker-compose-network.yml -f docker-compose-init-db.yml up -d
docker exec -i jms_core bash -c './jms upgrade_db'
docker-compose -f docker-compose-network.yml -f docker-compose.yml up -d

升级步骤⚓︎

升级及迁移请保持 SECRET_KEY 与旧版本一致,否则会导致数据库加密数据无法解密

  • 更新前请一定要做好备份工作

备份数据库

docker exec -it jms_core bash
mysqldump --skip-lock-tables --single-transaction --host=${DB_HOST} --port=${DB_PORT} --user=${DB_USER} --password=${DB_PASSWORD} ${DB_NAME} > /opt/jumpserver.sql
exit
docker cp jms_core:/opt/jumpserver.sql ~/jumpserver/jumpserver.sql

修改版本号

cd ~/jumpserver
vi .env
# 修改版本号为你要升级的版本, 其他选项保持默认
Version=v2.28.8

cd ~/jumpserver
docker-compose -f docker-compose-network.yml -f docker-compose-redis.yml -f docker-compose-mariadb.yml -f docker-compose.yml down -v
docker-compose -f docker-compose-network.yml -f docker-compose-redis.yml -f docker-compose-mariadb.yml -f docker-compose-init-db.yml up -d
docker exec -i jms_core bash -c './jms upgrade_db'
docker-compose -f docker-compose-network.yml -f docker-compose-redis.yml -f docker-compose-mariadb.yml -f docker-compose.yml up -d
cd ~/jumpserver
docker-compose -f docker-compose-network.yml -f docker-compose.yml down -v
docker-compose -f docker-compose-network.yml -f docker-compose-init-db.yml up -d
docker exec -i jms_core bash -c './jms upgrade_db'
docker-compose -f docker-compose-network.yml -f docker-compose.yml up -d