部署无鱼工时系统,超详细教程,并成功部署
部署无鱼工时系统
公司一个部门是做外包的,经常要项目组报工时记录给甲方,之前一直使用excel方式,最近要使用无鱼工时系统,准备部署一个。
下面是我的部署手记-超详细的介绍了这个项目的部署流程到最后运行起来。
1.项目介绍
无鱼项目工时系统,是一款开源的轻量级项目工时管理系统,是企业进行项工时管理统计的推荐选择。
下载地址:
https://gitee.com/wy-soft/wyproject/releases
2.安装总述
文档以工程部署在ubuntu部署为例进行说明。中间件采用docker方式安装。总体需要安装:docker、mariaDB、redis5.0、nginx。
环境需要:jdk1.8
所需工具:ubuntu系统服务器一台,Xshell软件, navcat数据库链接工具。
2.0 关闭防火墙
systemctl stop ufw
2.1 更新安装源
备份原文件
cp /etc/apt/sources.list /etc/apt/sources.list.bak
修改源配置文件
vi /etc/apt/sources.list
推荐使用清华源
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
然后执行更新
apt update -yapt upgrade
2.1 安装jdk
apt install openjdk-8-jdk-headless
2.2 安装docker
方案1使用官方脚本
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
方案2 使用apt
apt install docker-ce docker-ce-cli containerd.io
这里我们使用方式1
验证是否安装成功
docker version
显示如下说明已经安装完成。
启动docker
systemctl start docker
设置docker开机自启动(可选)
systemctl enable docker
2.3 安装数据库 mariaDB,也可选择使用mysql,功能是一样的。
拉取镜像
docker pull mariadb
如果拉取太慢,可以使用ctrl +c 中断,更换一下docker的镜像源再继续。
常用源
Docker中国区官方镜像:
https://registry.docker-cn.com
网易:
http://hub-mirror.c.163.com
ustc :
https://docker.mirrors.ustc.edu.cn
中国科技大学:
https://docker.mirrors.ustc.edu.cn
或者使用阿里云的 专属Docker加速器地址
修改源
vim /etc/docker/daemon.json
添加内容
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
重启docker
systemctl restart docker
更换源之后再执行拉取
docker pull mariadb
明显速度快很多
创建容器挂载路径
mkdir -p /usr/local/wuyu/mariadb/data && mkdir -p /usr/local/wuyu/mariadb/logs && mkdir -p /usr/local/wuyu/mariadb/conf
启动容器, 设置数据库密码为password
docker run -d -p 3306:3306 --name wuyu-mariadb -v /usr/local/wuyu/mariadb/data:/var/lib/mysql -v /usr/local/wuyu/mariadb/logs:/var/log/mysql --privileged=true --restart=always -e MYSQL_ROOT_PASSWORD=password mariadb
使用navicat 连接数据库
创建数据库
数据库名:
wy_project
字符集
utf8mb4
排序规则
utf8mb4_general_ci
下载sql文件,并导入
码云下载地址: https://gitee.com/wy-soft/wyproject/releases/tag/wyproject_all-0.1
在 wy_project 上 右键, 选择 运行sql,如果按钮为灰,则需要点双击一下打开 数据库,再右键。
将下载的文件中的 wy_project_init.sql 导入到数据库中。
执行完后,关闭窗口,在数据库名称上右键刷新可看见新建的表。
2.5.安装redis
拉取镜像
docker pull redis:5.0.5
创建挂载路径并授权
mkdir -p /usr/local/wuyu/redis5.0/data && mkdir -p /usr/local/wuyu/redis5.0/logs && mkdir -p /usr/local/wuyu/redis5.0/confchmod -R 755 /usr/local/wuyu/redis5.0
编辑配置文件
vi /usr/local/wuyu/redis5.0/conf/redis.conf
粘贴内容
# 默认为yes,开启保护模式,限制为本地访问protected-mode no# 默认为no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败daemonize nodatabases 16# 输入本地redis数据库存放文件夹(建议在docker环境中暂时不修改)dir ./# redis持久化(可选)appendonly yes# 设置密码requirepass password
启动redis
docker run -d -p 6380:6379 --name redis -v /usr/local/wuyu/redis5.0/conf/redis.conf:/etc/redis/redis.conf -v /usr/local/wuyu/redis5.0/data:/data --restart=always redis:5.0.5 redis-server /etc/redis/redis.conf
查看镜像运行情况
docker ps
如果启动有问题,请查看log进行纠错
方法是
docker log + 镜像名称
例如 docker logs redis
2.6.安装nginx
nginx 有三种方法
- 编译安装, 从网上下载nginx源码,进行编译后安装
- 使用apt-get 安装
- 使用docker安装。
编译安装的好处是可以自己制定nginx安装的位置和路径,缺点是需要安装一堆依赖包以及编译库,并且需要编译,过程比较慢。
使用apt-get nginx的安装位置和配置文件都是默认了,不是很方面进行管理。
docker方式是虚拟化方式,本次我们采用docker方式安装
拉取镜像
docker pull nginx
创建挂载路径
mkdir -p /usr/local/wuyu/nginx/conf && mkdir -p /usr/local/wuyu/nginx/logs && mkdir -p /usr/local/wuyu/nginx/www && mkdir -p /usr/local/wuyu/nginx/conf.d
这里容易出现一个问题,如果直接创建容器,虽然会创建成功,但是nginx运行不起来,会报错。
因此,我们需要先把工程文件放好位置
下载nginx 配置文件,并放到nginx配置目录下
wget https://gitee.com/wy-soft/wyproject/releases/download/wyproject_all-0.1/wy_nginx.conf
vi wy_nginx.conf
需要修改两处地方
1/ root 路径为 /usr/share/nginx/html
2/ locahost 改成服务器的ip (容器里无法通过localhost 访问其他容器 或者宿主机)
修改后,放到指定目录
mv wy_nginx.conf /usr/local/wuyu/nginx/conf.d/default.conf
下载前端工程文件
wget https://gitee.com/wy-soft/wyproject/releases/download/wyproject_all-0.1/wy_web.zip# 解压并移动
unzip wy_web.zip
mv wy_web www
mv www /usr/local/wuyu/nginx/
这时候创建容器,就不会出错了。
创建容器
docker run -d -p 80:80 --name nginx -v /usr/local/wuyu/nginx/www:/usr/share/nginx/html -v /usr/local/wuyu/nginx/conf.d:/etc/nginx/conf.d -v /usr/local/nginx/logs:/var/log/nginx --privileged=true --restart=always nginx
访问地址,因此我们这时候没有部署后端工程,所以会报404,先不要管,继续进行部署。
部署后端程序
#创建文件目录mkdir -p /usr/local/wuyu/app && mkdir -p /usr/local/wuyu/app/logs# 进入目录
cd /usr/local/wuyu/app
下载后端程序
wget https://gitee.com/wy-soft/wyproject/releases/download/wyproject_all-0.1/wy_project.jarchmod +x wy_project.jar下载后端控制脚本
wget https://gitee.com/wy-soft/wyproject/releases/download/wyproject_all-0.1/wy_ctl.shchmod +x wy_ctl.sh
修改配置信息,主要是mysql和redis的密码,
修改成password (或者自己设置的)
启动
./wy_ctl.sh start
这里又会出现一个错误
提示bash: ./wy_ctl.sh: /bin/sh^M: bad interpreter: No such file or directory
这是因为脚本的编码问题,可以把文档复制出来后,使用vi 创建一个同名文件 把内容复制进去。
或者下载工程里最新的文件。
wget https://gitee.com/wy-soft/wyproject/blob/master/wy_ctl.sh
chmox + wy_ctl.sh
然后修改里面的内容
也可能出现 ./wy_ctl.sh: 40: Syntax error: “(” unexpected
这是,Ubuntu 为加快开机速度,默认将root指向dash,解决办法就是将dash指向取消
# root 账号输入
dpkg-reconfigure dash# 非root 账号 输入
sudo dpkg-reconfigure dash
选择 no, 之后
然后重新启动
./wy_ctl.sh start
查看启动日志
tail -f /usr/local/wuyu/app/logs/server.log
看到最后提示工程启动成功,说明已经部署完成。
访问服务器的地址 192.168.128.129
使用admin 12345678 登录
3. 系统设置
点击管理, 选择 系统设置,填写公司的名称和logo
部署搞定。
下面创建角色/职位/人员之后就可以开始使用了。
部署无鱼工时系统,超详细教程,并成功部署相关推荐
- Docker最新超详细教程——安装与部署
Docker最新超详细教程--安装与部署 安装Docker CentOS安装Docker 1. 卸载(可选) 2. 安装yum工具 3. 更新本地镜像源 4. 安装docker 5. 注意事项 关闭防 ...
- 二进制安装部署 4 kubernetes集群---超详细教程
二进制安装部署kubernetes集群---超详细教程 前言:本篇博客是博主踩过无数坑,反复查阅资料,一步步搭建完成后整理的个人心得,分享给大家~~~ 本文所需的安装包,都上传在我的网盘中,需要的可以 ...
- 推荐一个开源的项目工时系统:无鱼工时系统
一.介绍 无鱼工时管理系统,是一款轻量级项目工时统计系统,可通过员工工时上报的方式,来记录项目所花费的工时,帮助企业进行项目工时统计.核算人工成本. 实时.动态.真实的展示项目投入. 二.系统定位 轻 ...
- 一键重装系统win10超详细教程
** 一键重装系统win10超详细教程--云骑士装机大师 ** win 10系统自推出以来大受用户追捧,不止启动速度飞快,界面简洁美观,还能兼容大量游戏,优点众多.许多朋友想要为电脑重装一个win 1 ...
- Linux系统双网卡聚合超详细教程
Linux系统双网卡聚合超详细教程 将多个物理网卡聚合在一起,从而实现冗错和提高吞吐量 网络组不同于旧版中bonding技术,提供更好的性能和扩展性 网络组由内核驱动和teamd守护进程实现. 主要分 ...
- 手把手带你入门前端工程化——超详细教程(高级前端必备)
本文将分成以下 7 个小节: 技术选型 统一规范 测试 部署 监控 性能优化 重构 部分小节提供了非常详细的实战教程,让大家动手实践. 另外我还写了一个前端工程化 demo 放在 github 上.这 ...
- 手把手带你入门前端工程化——超详细教程
授权自@谭光志 链接:https://segmentfault.com/a/1190000037752931,也可点击阅读原文 本文将分成以下 7 个小节: 技术选型 统一规范 测试 部署 监控 性能 ...
- mysql 8.0.22_最新版MySQL 8.0.22下载安装超详细教程(Windows 64位)
前言 前几天下载安装了最新版的MySQL 8.0.22,遇到了不少问题,参考了一些方法,最终得以解决.今天将自己的安装过程记录下来,希望对各位有所帮助. 一.MySQL 8.0.22官网下载 点击进入 ...
- 大数据平台Ambari2.7.4+HDP3.1.4安装(超详细教程)
大数据平台Ambari2.7.4+HDP3.1.4安装(超详细教程) Ambari2.7.4+HDP3.1.4是最后一个免费版本,新版本需要授权. 因工作需要,安装大数据集群,了解到Ambari属于A ...
最新文章
- 神经网络其实和人一样懒惰,喜欢走捷径......
- 2015年6月9日_诗词学习
- 执行上下文(Exection Contexts)
- python url模块介绍_python 中 urlparse 模块介绍
- 禁售苹果手机_苹果、华为供应商工厂突发火灾!浓烟冲天
- Python程序异常处理:try、except、else、finally,捕获指定异常类型、捕获多个异常类型、捕获所有异常类型、捕获异常信息、异常的传递、raise抛出自定义异常
- MySQL · 案例分析 · RDS MySQL线上实例insert慢常见原因分析
- 【干货】PEP8风格指南
- Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could
- 鸿蒙系统非手机用,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可
!【手机吧】_百度贴吧...
- sqlmap绕过waf的脚本介绍(tamper脚本介绍)
- 黑鲨重装计算机安装无法继续,黑鲨装机大师常见问题详解
- 微信小程序:小程序开发者注册步骤
- 阿里实现Redis亿级存储的方案
- 宋宝华:LEP(Linux易用剖析器) 是什么,为什么以及怎么办(2)
- 路由交换技术实战七 FR 网络中配置 OSPF( 完成版 )
- 百度网盘不限速下载网页版
- 让word中插入的图片不失真,图像保持原清晰度
- @SuppressWarnings的使用、作用、用法
- 柔性作业车间调度问题研究-思考
热门文章
- 递归查询三种实现方式
- 论文笔记 Object-Aware Instance Labeling for Weakly Supervised Object Detection - ICCV 2019
- 12接口扩展无忧,存储显示充电都拉满,ORICO XDR扩展坞上手
- 多彩的书写工具,画图写字更好看,米家液晶小黑板多彩版上手
- android平台获取手机IMSI,IMEI ,序列号,和 手机号的方法
- 推荐系统经典算法之——MF(矩阵分解)
- abb机器人离线编程软件叫做_工业机器人离线编程(ABB)1-2 常用离线编程软件介绍.pptx...
- 【Halcon 计算点到直线和点到直线延长线的距离】
- CAD最常用的快捷键大全来啦
- 安全好用的快充头,iPhone 13的好搭档,RAVPOWER 20W充电器上手