docker 安装 MaxKey(4.1.12)
·
拉去镜像
maxkey 门户前端
dokcer pull maxkeytop/maxkey-frontend:4.1.12
maxkey 后端
docker pull maxkeytop/maxkey:4.1.12
maxkey-mgt 管理前端
docker pull maxkeytop/maxkey-mgt-frontend:4.1.12
maxkey-mgt 管理后端
docker pull maxkeytop/maxkey-mgt:4.1.12
docker-compose.yml
docker-compose.yml
提前解释
原来已经用docker安装了mysql 直接沿用(保证两者在同一个网络下:universal-network)
内容:
services:
maxkey:
image: maxkeytop/maxkey:4.1.12
container_name: maxkey4.1.12
restart: unless-stopped
environment:
TZ: "Asia/Shanghai"
JAVA_TOOL_OPTIONS: "-Djava.awt.headless=true"
DATABASE_HOST: "mysql8.0.43"
DATABASE_PORT: "3306"
DATABASE_NAME: "maxkey"
DATABASE_USER: "root"
DATABASE_PWD: "Admin@123"
ports:
- "9527:9527"
volumes:
- ./maxkey-config/application.yml:/usr/local/maxkey/config/application.yml
- ./maxkey-logs:/maxkey/logs
logging:
driver: "json-file"
options:
max-size: "100m"
max-file: "3"
networks:
- universal-network
# 用户门户前端(登录页面、应用门户,内置nginx)
maxkey-frontend:
image: maxkeytop/maxkey-frontend:4.1.12
container_name: maxkey-frontend4.1.12
restart: unless-stopped
environment:
TZ: "Asia/Shanghai"
# 指向后端maxkey服务名(容器内部DNS)
API_BASE_URL: "http://maxkey:9527/sign"
ports:
- "8527:8527"
volumes:
- ./maxkey-font-nginx/config/default.conf:/etc/nginx/conf.d/default.conf
depends_on:
- maxkey
networks:
- universal-network
# 管理后端API【修复验证码关键点】
maxkey-mgt:
image: maxkeytop/maxkey-mgt:4.1.12
container_name: maxkey-mgt4.1.12
restart: unless-stopped
environment:
TZ: "Asia/Shanghai"
# 关键!缺少这一行验证码无法渲染
JAVA_TOOL_OPTIONS: "-Djava.awt.headless=true"
DATABASE_HOST: "mysql8.0.43"
DATABASE_PORT: "3306"
DATABASE_NAME: "maxkey"
DATABASE_USER: "root"
DATABASE_PWD: "Admin@123"
ports:
- "9526:9526"
volumes:
- ./maxkey-mgt-config/application.yml:/usr/local/maxkey-mgt/config/application.yml
- ./maxkey-mgt-logs:/usr/local/maxkey-mgt/logs
depends_on:
- maxkey
networks:
- universal-network
maxkey-mgt-frontend:
image: maxkeytop/maxkey-mgt-frontend:4.1.12
container_name: maxkey-mgt-frontend4.1.12
restart: unless-stopped
environment:
TZ: "Asia/Shanghai"
API_BASE_URL: "http://maxkey-mgt:9526"
ports:
- "8526:80"
volumes:
- ./mgt-nginx/default.conf:/etc/nginx/conf.d/default.conf
depends_on:
- maxkey-mgt
networks:
- universal-network
networks:
universal-network:
external: true
name: universal-network
./maxkey-config/application.yml
maxkey:
login:
# 关闭门户登录验证码
captcha: true
spring:
profiles:
active: prod
datasource:
url: jdbc:mysql://${DATABASE_HOST}:${DATABASE_PORT}/${DATABASE_NAME}?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true
username: ${DATABASE_USER}
password: ${DATABASE_PWD}
driver-class-name: com.mysql.cj.jdbc.Driver
./maxkey-font-nginx/config/default.conf
server {
listen 8527;
server_name _;
root /usr/share/nginx/html;
index index.html;
# 登录门户静态页面
location / {
try_files $uri $uri/ /index.html;
}
# 核心:所有 /sign/ 接口直接转发到 maxkey 认证核心服务
location /sign/ {
proxy_pass http://maxkey:9527/sign/;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
# 验证码图片不要gzip,避免图片异常
gzip off;
}
}
./maxkey-mgt-config/application.yml
maxkey:
mgt:
login:
# true=启用验证码;false=关闭管理后台登录验证码
captcha: true
spring:
profiles:
active: prod
datasource:
url: jdbc:mysql://${DATABASE_HOST}:${DATABASE_PORT}/${DATABASE_NAME}?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true
username: ${DATABASE_USER}
password: ${DATABASE_PWD}
driver-class-name: com.mysql.cj.jdbc.Driver
./mgt-nginx/default.conf
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
# 前端静态资源
location /maxkey-mgt {
try_files $uri $uri/ /maxkey-mgt/index.html;
}
# 关键:验证码接口转发
location /maxkey-mgt-api/ {
proxy_pass http://maxkey-mgt:9526/maxkey-mgt-api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# 图片流不压缩,防止损坏
gzip off;
}
}
启动
docker-compose up -d
管理端访问地址 (账号/密码:admin/maxkey)
http://localhost:8526/maxkey-mgt/#/passport/login

门户访问地址(账号/密码:admin/maxkey)

更多推荐



所有评论(0)