使用 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
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)
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>
