feat dockerfile部署

main
耿阳 2 years ago
parent 98de31d7ae
commit e1e93f2d07

@ -0,0 +1,27 @@
FROM golang:1.18-alpine as builder
MAINTAINER GY "gengyang36@163.com"
RUN go env -w GO111MODULE=on && \
go env -w GOPROXY=https://goproxy.cn,direct
WORKDIR /app
COPY . /app/fonchain-approval
WORKDIR /app/fonchain-approval
RUN go mod download
RUN go build -o /app/fonchain-approval/bin/approval cmd/app.go
FROM alpine
RUN apk update --no-cache && apk add --no-cache ca-certificates tzdata
ENV TZ Asia/Shanghai
WORKDIR /app/approval
#通过名称引用
COPY --from=builder /app/fonchain-approval/bin/approval ./bin/approval
COPY --from=builder /app/fonchain-approval/conf/ ./conf/
WORKDIR /app/approval/bin
EXPOSE 20009
ENTRYPOINT ["./approval"]

@ -0,0 +1,151 @@
-- --------------------------------------------------------
-- 主机: 127.0.0.1
-- 服务器版本: 5.7.38 - MySQL Community Server (GPL)
-- 服务器操作系统: Linux
-- HeidiSQL 版本: 12.0.0.6468
-- --------------------------------------------------------
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET NAMES utf8 */;
/*!50503 SET NAMES utf8mb4 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
-- 导出 表 fontree-approval.approval 结构
CREATE TABLE IF NOT EXISTS `approval` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`domain` varchar(50) NOT NULL COMMENT '环境变量',
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`submitter_id` int(11) DEFAULT NULL COMMENT '提交人ID',
`submitter_name` varchar(50) NOT NULL DEFAULT '' COMMENT '提交人名称缓存',
`approver_id` int(11) DEFAULT NULL COMMENT '审核人ID',
`approver_name` varchar(50) NOT NULL DEFAULT '' COMMENT '审核人名称缓存',
`status` tinyint(4) DEFAULT NULL COMMENT '状态0-待 1-可 2-否',
`copy_users` json NOT NULL COMMENT '抄送人名称缓存',
`type` enum('content','work','exhibition','show','bundle') DEFAULT NULL COMMENT '类型',
`content` tinytext COMMENT '提交审批内容',
`reply` tinytext COMMENT '回复内容',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='审批';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.approval_exhibition 结构
CREATE TABLE IF NOT EXISTS `approval_exhibition` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`approval_id` bigint(20) DEFAULT NULL COMMENT '申请的id',
`exhibition_id` bigint(20) DEFAULT NULL COMMENT '画展包的id',
`package_name` varchar(50) DEFAULT NULL COMMENT '包名称',
`package_id` bigint(20) DEFAULT NULL COMMENT '包id',
`package_size` varchar(50) DEFAULT NULL COMMENT '平尺数',
`package_number` varchar(50) DEFAULT NULL COMMENT '序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='绑定的画展包';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.approval_work 结构
CREATE TABLE IF NOT EXISTS `approval_work` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`approval_id` bigint(20) DEFAULT NULL COMMENT '申请的id',
`work_id` bigint(20) DEFAULT NULL COMMENT '作品类型id',
`artwork_id` bigint(20) DEFAULT NULL COMMENT '作品id',
`artwork_name` varchar(50) DEFAULT NULL COMMENT '作品名称',
`artist_name` varchar(50) DEFAULT NULL COMMENT '作家名称',
`artwork_cover` varchar(50) DEFAULT NULL COMMENT '作品封面',
`artwork_number` varchar(50) DEFAULT NULL COMMENT '作品序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='审批绑定画作表';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.bundle 结构
CREATE TABLE IF NOT EXISTS `bundle` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`return_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '归还时间',
`received_at` datetime DEFAULT NULL COMMENT '领取时间',
`applications_num` int(11) DEFAULT NULL COMMENT '申请数量',
`approval_id` bigint(20) DEFAULT NULL COMMENT '绑定的申请id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='画展包数量审批';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.department_approval_setting 结构
CREATE TABLE IF NOT EXISTS `department_approval_setting` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`deleted_at` int(11) NOT NULL DEFAULT '0' COMMENT '删除标记',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`department_id` bigint(20) NOT NULL COMMENT '绑定的部门ID',
`copy_users` json NOT NULL COMMENT '抄送人',
`approver_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '审批人ID',
`approver_name` varchar(50) DEFAULT NULL COMMENT '审批人名称',
`domain` varchar(50) NOT NULL COMMENT '环境env',
PRIMARY KEY (`id`),
UNIQUE KEY `index` (`department_id`,`deleted_at`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='部门抄送人设置';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.exhibition 结构
CREATE TABLE IF NOT EXISTS `exhibition` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`approval_id` bigint(20) DEFAULT NULL COMMENT '关联申请的ID',
`address` varchar(255) NOT NULL DEFAULT '',
`received_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='审批-画展包';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.show 结构
CREATE TABLE IF NOT EXISTS `show` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`artist_num` int(11) NOT NULL DEFAULT '0' COMMENT '艺术家数量',
`show_at` datetime NOT NULL COMMENT '画展时间',
`approval_id` bigint(20) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='画展审批';
-- 数据导出被取消选择。
-- 导出 表 fontree-approval.work 结构
CREATE TABLE IF NOT EXISTS `work` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`deleted_at` int(11) NOT NULL COMMENT '删除时间',
`created_at` datetime NOT NULL COMMENT '创建时间',
`updated_at` datetime NOT NULL COMMENT '更新时间',
`return_at` datetime DEFAULT NULL COMMENT '送还时间',
`received_at` datetime DEFAULT NULL COMMENT '领取时间',
`approval_id` bigint(20) NOT NULL COMMENT '绑定的申请id',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='画作申请审批';
-- 数据导出被取消选择。
/*!40103 SET TIME_ZONE=IFNULL(@OLD_TIME_ZONE, 'system') */;
/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */;
/*!40014 SET FOREIGN_KEY_CHECKS=IFNULL(@OLD_FOREIGN_KEY_CHECKS, 1) */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40111 SET SQL_NOTES=IFNULL(@OLD_SQL_NOTES, 1) */;

@ -0,0 +1,13 @@
[mysql]
Db = mysql
DbHost = 127.0.0.1
DbPort = 3306
DbUser = root
DbPassWord = 123456
DbName = fontree-approval
[redis]
RedisDB =
RedisAddr = 127.0.0.1:6379
RedisPW =
RedisDBNAme =

@ -0,0 +1,27 @@
dubbo:
registries:
demoZK:
protocol: zookeeper
address: 127.0.0.1:2181
protocols:
triple:
name: tri
port: 20009
provider:
services:
ApprovalProvider:
interface: com.fontree.microservices.common.Approval # must be compatible with grpc or dubbo-java
auth: "true"
filter: echo,metrics,token,accesslog,tps,generic_service,execute,pshutdown,auth,fonValidateFilter
params:
.accessKeyId: "SYD8-Approval-12"
.secretAccessKey: "Al-Approval-FDF1"
# logger:
# lumberjack-config:
# filename: logs.log
# maxsize: 1
# maxage: 3
# maxbackups: 5
# localtime: true
# compress: true

@ -36,6 +36,9 @@ func init() {
//MySQL数据库
path := strings.Join([]string{DbUser, ":", DbPassWord, "@tcp(", DbHost, ":", DbPort, ")/", DbName, "?charset=utf8&parseTime=true"}, "")
fmt.Println("-----------------------------")
fmt.Println(path)
fmt.Println("-----------------------------")
//连接数据库
Database(path)
}

Loading…
Cancel
Save