Docker 安装

Posted yangzp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 安装相关的知识,希望对你有一定的参考价值。

Jumpserver 封装了一个 All in one Docker, 可以快速启动。该镜像集成了所需要的组件, 支持使用外置 Database 和 Redis

Tips: 不建议在生产中使用, 因为所有软件都打包到一个Docker中了, 不是Docker最佳实践

生产环境部署建议参考 进阶安装文档

快速启动

使用 root 命令行输入

# 生成随机加密秘钥, 勿外泄
$ if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bashrc; echo $SECRET_KEY; else echo $SECRET_KEY; fi
$ if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bashrc; echo $BOOTSTRAP_TOKEN; else echo $BOOTSTRAP_TOKEN; fi

$ docker run --name jms_all -d -p 80:80 -p 2222:2222 -e SECRET_KEY=$SECRET_KEY -e BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN jumpserver/jms_all:latest

# macOS 生成随机 key 可以用下面的命令
$ if [ "$SECRET_KEY" = "" ]; then SECRET_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9 < /dev/urandom | head -c 50`; echo "SECRET_KEY=$SECRET_KEY" >> ~/.bash_profile; echo $SECRET_KEY; else echo $SECRET_KEY; fi
$ if [ "$BOOTSTRAP_TOKEN" = "" ]; then BOOTSTRAP_TOKEN=`LC_CTYPE=C tr -dc A-Za-z0-9 < /dev/urandom | head -c 16`; echo "BOOTSTRAP_TOKEN=$BOOTSTRAP_TOKEN" >> ~/.bash_profile; echo $BOOTSTRAP_TOKEN; else echo $BOOTSTRAP_TOKEN; fi

环境迁移和更新升级请检查 SECRET_KEY 是否与之前设置一致, 不能随机生成, 否则数据库所有加密的字段均无法解密

访问

浏览器访问: http://<容器所在服务器IP>

SSH访问: ssh -p 2222 <容器所在服务器IP>

XShell等工具请添加 connection 连接, 默认 ssh 端口 2222

默认管理员账户 admin 密码 admin

外置数据库要求

  • mysql 版本需要大于等于 5.6
  • mariadb 版本需要大于等于 5.5.6
  • 数据库编码要求 uft8

创建数据库

创建数据库命令行

# mysql
$ create database jumpserver default charset ‘utf8‘;
$ grant all on jumpserver.* to ‘jumpserver‘@‘%‘ identified by ‘weakPassword‘;

额外环境变量

  • SECRET_KEY = **
  • BOOTSTRAP_TOKEN = **
  • DB_HOST = mysql_host
  • DB_PORT = 3306
  • DB_USER = jumpserver
  • DB_PASSWORD = weakPassword
  • DB_NAME = jumpserver
  • REDIS_HOST = 127.0.0.1
  • REDIS_PORT = 6379
  • REDIS_PASSWORD =
  • VOLUME /opt/jumpserver/data/media
  • VOLUME /var/lib/mysql
$ docker run --name jms_all -d     -v /opt/mysql:/var/lib/mysql
    -v /opt/jumpserver:/opt/jumpserver/data/media
    -p 80:80     -p 2222:2222     -e SECRET_KEY=xxxxxx     -e BOOTSTRAP_TOKEN=xxx     -e DB_HOST=192.168.x.x     -e DB_PORT=3306     -e DB_USER=root     -e DB_PASSWORD=xxx     -e DB_NAME=jumpserver     -e REDIS_HOST=192.168.x.x     -e REDIS_PORT=6379     -e REDIS_PASSWORD=xxx     jumpserver/jms_all:latest

以上是关于Docker 安装的主要内容,如果未能解决你的问题,请参考以下文章

markdown docker-compose片段

sh Docker片段

Docker初级——介绍安装和使用

Docker和pip安装:避免在已安装某些软件包时安装所有软件包

在Tomcat的安装目录下conf目录下的server.xml文件中增加一个xml代码片段,该代码片段中每个属性的含义与用途

PHP代码-psysh调试代码片段工具