使用 mysql 部署

duic 支持使用 MySQL 存储配置数据(兼容 MariaDB)。

前提

  • Java >= 1.8

  • MySQL >= 5.6

创建数据库

  1. CREATE DATABASE IF NOT EXISTS `duic` CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

启动配置

application.yml

  1. spring:
  2. datasource:
  3. url: jdbc:mysql://127.0.0.1:3306/duic?autoReconnect=true&useServerPrepStmts=true
  4. username: root
  5. password: root
参数详细解释


-
spring.datasource 数据源


-
url mysql 连接地址

-
username mysql 连接用户

-
password mysql 连接用户密码


docker 部署

镜像已经同步至 docker 官方镜像仓库 https://hub.docker.com/r/zhudyos/duic

  • 启动镜像
  1. $ docker run -d -p 7777:7777 -e DUIC_OPTS=-Dspring.profiles.active=mysql -v $(pwd)/config:/app/config zhudyos/duic

Tip

  • application.yml 配置文件所在目录挂载到容器的 /app/config 目录中

  • 通过 DUIC_OPTS 环境变量设置数据库类型

  • 测试
  1. $ curl http://localhost:7777/index.html

传统 java 方式部署

  • 确认 java 环境至少是 1.8 或以上的版本
  1. $ java -version
  2.  
  3. java version "1.8.0_151"
  4. Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
  5. Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
  • 创建 duic 目录
  1. $ mkdir /opt/duic
  • 进入 duic 目录
  1. $ cd /opt/duic
  • GitHub Releases 页面获取 duic-[version].jar 并放置在 /opt/duic 目录中
  1. $ wget https://github.com/zhudyos/duic/releases/download/[version]/duic-[version].jar -O duic.jar

Tip

在部署时需要将 url 中的版本替换为你需要的版本号,最好从 GitHub Releases 找到合适的版本后复制下载地址

  • 创建配置文件目录
  1. $ mkdir config

Tip

确保 config/opt/duic 的子目录

  • 进入配置文件目录
  1. $ cd config
  • 创建启动配置文件/并将数据库连接配置写入文件
  1. $ touch application.yml
  • 启动 duic
  1. $ java -Dspring.profiles.active=mysql -jar duic.jar

Tip

spring.profiles.active

  • mysql 使用 mysql 存储配置数据时该参数必须增加

在控制台看见如下日志输出即启动成功

  1. ______ _ ______
  2. |_ _ `. (_) .' ___ |
  3. | | `. \ __ _ __ / .' \_|
  4. | | | |[ | | | [ || |
  5. _| |_.' / | \_/ |, | |\ `.___.'\
  6. |______.' '.__.'_/[___]`.____ .'
  7. :: duic :: (v1.5.2-SNAPSHOT)
  8.  
  9. 2018-05-03 07:06:05,980 INFO i.z.d.server.Application$Companion - Starting Application.Companion v1.5.2-SNAPSHOT on ubuntu with PID 47440 (/opt/duic/duic.jar started by zy in /opt/duic)
  10. 2018-05-03 07:06:05,984 INFO i.z.d.server.Application$Companion - The following profiles are active: mysql,prod
  11. 2018-05-03 07:06:09,595 INFO r.i.netty.tcp.BlockingNettyContext - Started HttpServer on /0:0:0:0:0:0:0:0%0:7777
  12. 2018-05-03 07:06:09,596 INFO o.s.b.w.e.netty.NettyWebServer - Netty started on port(s): 7777
  13. 2018-05-03 07:06:09,600 INFO i.z.d.server.Application$Companion - Started Application.Companion in 4.192 seconds (JVM running for 4.864)
  • 测试
  1. $ curl http://localhost:7777/index.html

原文: https://github.com/zhudyos/duic/wiki/deployment-mysql