如何在宝塔中安装(linux)
- 新建文件夹用于存在此项目全部内容
- 上传软件到该文件夹内
- 在宝塔【网站】-【Go 项目】下点击 新建 Go 项目
- 填写以下信息
- 项目执行文件 : 为上传目录中的 dav.ext 文件
- 项目名称 : dav
- 项目端口:7005 对应 config 文件的 AppPort 配置项
- 执行命令:默认即可
- 运行用户:选择 root (若不选择 root 则有可能出现图片无法上传的情况)
- 开机启动:建议勾选
- 修改配置文件
若使用 mysql 数据库请修改配置文件 configs/app.ini
中的 DatabaseDsn
- 连接配置格式为
username:password@tcp(127.0.0.1:3306)/dbname
- 示例
以下位连接 ip 为 192.168.1.50 的服务器端口为 3306,数据库用户名为 root 密码为 123456 数据库为 dav
DatabaseDsn = root:123456@tcp(192.168.1.50:3306)/dav?multiStatements=true
其他配置请参考以下配置文件章节
- 如需要域名绑定,请在域名管理处填写需要绑定的域名即可。
- 下项目日志栏目下看到如下信息就代表启动成功
Linux 系统下部署
nohup
我们可以使用简单的 nohup 命令来运行应用程序,使其作为后台守护进程运行,即使远程连接的 SSH 断开也不会影响程序的执行。在流行的 Linux 发行版中往往都默认安装好了 nohup 命令工具。 命令如下:
nohup ./dav.exe &
tmux
tmux 是一款 Linux 下的终端复用工具,可以开启不同的终端窗口来将应用程序作为后台守护进程执行,即使远程连接的 SSH 断开也不会影响程序的执行。 在 ubuntu 系统下直接使用sudo apt-get install tmux
安装即可。使用以下步骤将应用程序后台运行。
- tmux new -s dav;
- 在新终端窗口中执行./dav.exe 即可;
- 使用 ctrl + B & D 快捷键可以退出当前终端窗口;
- 使用 tmux attach -t dav 可进入到之前的终端窗口;
Nginx
我们推荐使用 Nginx 作为反向代理的前端接入层
server {
listen 80;
server_name davbi.com;
access_log /var/log/app-access.log;
error_log /var/log/app-error.log;
location / {
try_files $uri @backend;
}
location @backend {
proxy_pass http://127.0.0.1:7001;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Windows 下的部署
双击 dav.exe 即可运行
授权文件
将获得的License
文件放入根目录下的 config 文件夹中即可,请注意该文件包含系统敏感信息请勿泄露
配置文件
AppDebug = false
AppPort = 7001
AppIp=0.0.0.0
AppJwtSecret = 111111
AppName = dav
;数据库类型
DatabaseType = sqlite3
;示例1: username:password@tcp(127.0.0.1:3306)/dbname
;DatabaseDsn = root:root@tcp(127.0.0.1:3306)/dav
;DatabaseDsn = root:123456@tcp(192.168.1.22:3305)/dav_v5
DatabaseDsn = "file:configs/main.db?cache=shared&columnsWithAlias=true"
配置项 | 说明 |
---|---|
AppDebug | 是否开启调试模式(开启后) 后影响性能 填写 false 即可 |
AppPort | 对外暴漏的端口 |
AppIp | 是否绑定 ip 不绑定填写 0.0.0.0 即可 |
AppJwtSecret | 系统用户加密登录的key相当于系统密码,在部署的时候一定要修改掉默认的 💥 |
AppName | 运行系统名称 |
DatabaseType | 数据库类型 sqlite3 和 mysql |
DatabaseDsn | 数据库连接参数 |
DatabaseDsn 详细说明
- sqlite3 的连接说明
sqlite3 为文件数据库,无需安装指定一个存储位置即可以 .下配置表示在configs
目录下使用main.db
数据库 , 若数据库不存在系统在启动的时候自动创建一个
DatabaseDsn = "file:configs/main.db?cache=shared&columnsWithAlias=true"
- mysql 的连接说明
- 连接配置格式为
username:password@tcp(127.0.0.1:3306)/dbname?multiStatements=true
- 示例
以下位连接 ip 为 192.168.1.50 的服务器端口为 3306,数据库用户名为 root 密码为 123456 数据库为 dav
DatabaseDsn = root:123456@tcp(192.168.1.50:3306)/dav?multiStatements=true