当前位置: 首页 > news >正文

禅道源码部署

文章目录

  • 禅道部署
    • 1.环境部署
      • 安装httpd和mariadb
      • 安装php
    • 2.安装禅道
      • 首先进行httpd服务的配置
      • 安装禅道

禅道部署

1.环境部署

安装lamp环境

组件版本
httpdyum安装
mariadbyum安装
phpphp-7.4.33

在这里插入图片描述

选择一个php版本就行,我们这里选择的是7.4.33

安装httpd和mariadb

[root@zentao ~]# yum -y install httpd mariadb-server
##设置自启动
[root@zentao ~]# systemctl enable --now httpd
[root@zentao ~]# systemctl enable --now mariadb
##设置mariadb数据库密码
[root@zentao ~]# mysql -uroot -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 5.5.68-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> set password = password('123456');
Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> exit
Bye

安装php

1.环境配置

[root@zentao ~]# yum -y install  libxml2-devel gcc-c++ openssl-devel sqlite-devel libcurl-devel readline-devel libpng-devel freetype-devel libzip-devel libjpeg-turbo-devel bzip2-devel##安装oniguruma
[root@zentao ~]# tar xf oniguruma-6.9.4.tar.gz 
[root@zentao ~]# cd oniguruma-6.9.4
(这是安装oniguruma所需依赖)
[root@zentao oniguruma-6.9.4]# yum -y install whatprovides autoconf automake libtool
[root@zentao oniguruma-6.9.4]# ./autogen.sh 
Generating autotools files.
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'Run ./configure, make, and make install.
[root@zentao oniguruma-6.9.4]# ./configure --prefix=/usr --libdir=/lib64
[root@zentao oniguruma-6.9.4]# make && make install##降级libzip
[root@zentao ~]# yum -y remove libzip
[root@zentao ~]# tar xf libzip-1.2.0.tar.gz
[root@zentao ~]# cd libzip-1.2.0
[root@zentao libzip-1.2.0]# ./configure --prefix=/usr --libdir=/lib64
[root@zentao libzip-1.2.0]# make && make install

2.安装php

[root@zentao ~]# tar xf php-7.4.33.tar.gz
[root@zentao ~]# cd php-7.4.33
[root@zentao php-7.4.33]# ls
appveyor             buildconf.bat        docs        NEWS                 README.REDIST.BINS  travis               Zend
azure                CODING_STANDARDS.md  ext         pear                 run-tests.php       TSRM
azure-pipelines.yml  configure            EXTENSIONS  php.ini-development  sapi                UPGRADING
build                configure.ac         LICENSE     php.ini-production   scripts             UPGRADING.INTERNALS
buildconf            CONTRIBUTING.md      main        README.md            tests               win32
[root@zentao php-7.4.33]# ./configure --prefix=/usr/local/php7  \
--with-config-file-path=/etc \
--enable-fpm \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-soap \
--with-openssl \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--enable-exif  \
--enable-ftp \
--enable-gd \
--with-jpeg \
--with-zlib \
--with-zlib-dir \
--with-freetype \
--with-gettext \
--enable-json \
--enable-mbstring \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-readline \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--with-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-pcntl \
--enable-posix
[root@zentao php-7.4.33]# make -j $(cat /proc/cpuinfo |grep processor|wc -l)
[root@zentao php-7.4.33]# make install

3.配置环境变量和安装后配置

##环境变量配置
[root@zentao php-7.4.33]# echo 'export PATH=/usr/local/php7/bin:$PATH' > /etc/profile.d/php7.sh
[root@zentao php-7.4.33]# cp php.ini-production /etc/php.ini
[root@zentao php-7.4.33]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@zentao php-7.4.33]# chmod +x /etc/rc.d/init.d/php-fpm
[root@zentao php-7.4.33]# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
[root@zentao php-7.4.33]# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf##编写php服务的单元文件
[root@zentao php-7.4.33]# cat > /usr/lib/systemd/system/php-fpm.service <<EOF
[Unit]
Description=php-fpm server daemon
After=network.target[Service]
Type=forking
ExecStart=/etc/init.d/php-fpm start
ExecStop=/etc/init.d/php-fpm stop
ExecReload=/bin/kill -HUP $MAINPID[Install]
WantedBy=multi-user.target
EOF##配置fpm的相关选项为你所需要的值:
[root@zentao php-7.4.33]# cat <<EOF >> /usr/local/php7/etc/php-fpm.conf
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 8
EOF##加载配置文件并设置php开机自启
[root@zentao php-7.4.33]# systemctl daemon-reload
[root@zentao php-7.4.33]# systemctl enable --now php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
[root@zentao php-7.4.33]# ss -antl
State      Recv-Q Send-Q                 Local Address:Port                                Peer Address:Port              
LISTEN     0      128                        127.0.0.1:9000                                           *:*                  
LISTEN     0      50                                 *:3306                                           *:*                  
LISTEN     0      128                                *:22                                             *:*                  
LISTEN     0      100                        127.0.0.1:25                                             *:*                  
LISTEN     0      128                               :::80                                            :::*                  
LISTEN     0      128                               :::22                                            :::*                  
LISTEN     0      100                              ::1:25                                            :::*

2.安装禅道

首先进行httpd服务的配置

[root@zentao ~]# find / -name *vhosts.conf
/usr/share/doc/httpd-2.4.6/httpd-vhosts.conf
[root@zentao ~]# cd /etc/httpd
[root@zentao httpd]# cd conf.d
[root@zentao conf.d]# cp /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf vhosts.conf
[root@zentao conf.d]# vim vhosts.conf 
[root@zentao conf.d]# cat vhosts.conf 
<VirtualHost *:80>DocumentRoot "/var/www/html"ErrorLog "/var/log/httpd/zentao-error_log"CustomLog "/var/log/httpd/zentao-access_log" commonProxyRequests OffProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/$1<Directory "/var/www/html">Options noneAllowOverride noneRequire all granted</Directory>
</VirtualHost>[root@zentao conf.d]# cd ..
[root@zentao httpd]# cd conf
[root@zentao conf]# vim httpd.conf AddType application/x-compress .ZAddType application/x-gzip .gz .tgzAddType application/x-httpd-php .php    ;添加这一行AddType application/x-httpd-php-source .phps    ;添加这一行
[root@zentao conf]# vim httpd.conf 
[root@zentao conf]# grep -C1 'index.html' httpd.conf 
<IfModule dir_module>DirectoryIndex index.php index.html   ;将index.php放在index.html前面
</IfModule>##重启httpd服务
[root@zentao conf]# systemctl restart httpd##关闭防火墙
[root@zentao ~]# systemctl disable --now firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@zentao ~]# setenforce 0

安装禅道

[root@zentao ~]# unzip ZenTaoPMS-20.7.1-php7.2_7.4.zip
[root@zentao ~]# cp -r zentaopms/ /var/www/html/

在这里插入图片描述

本机ip+指定路径访问安装界面

在这里插入图片描述

按照要求修改权限

[root@zentao html]# chmod 777 -R /var/www/html/zentaopms/tmp/
[root@zentao html]# chmod 777 -R /var/www/html/zentaopms/www/data

在这里插入图片描述

权限修改完成之后下一步即可

在这里插入图片描述

数据库密码为之前给mariadb设置的密码

在这里插入图片描述

下一步即可

在这里插入图片描述

出现没有生成配置文件的报错

查阅开发者社区的建议是

可以将zentaopms/config/config.php中的下面一行修改为true,开启自定义session:
$config->customSession = true;

[root@zentao html]# cd zentaopms/
[root@zentao zentaopms]# cd config/
[root@zentao config]# vim config.php 
[root@zentao config]# grep -C1 'customSession' config.php
$config->customSession = true;

在这里插入图片描述

成功生成配置文件,安装下面黄字的提示操作即可

[root@zentao config]# vim  /var/www/html/zentaopms/config/my.php
[root@zentao config]# cat /var/www/html/zentaopms/config/my.php
<?php
$config->installed       = true;
$config->debug           = false;
$config->requestType     = 'GET';
$config->timezone        = 'Asia/Shanghai';
$config->db->driver      = 'mysql';
$config->db->host        = '127.0.0.1';
$config->db->port        = '3306';
$config->db->name        = 'zentao';
$config->db->user        = 'root';
$config->db->encoding    = 'UTF8';
$config->db->password    = '123456';
$config->db->prefix      = 'zt_';
$config->webRoot         = getWebRoot();
$config->default->lang   = 'zh-cn';

在这里插入图片描述

按需选择功能

在这里插入图片描述

填入管理员账号和密码,按需填写公司名称

在这里插入图片描述

安装完成

在这里插入图片描述

相关文章:

禅道源码部署

文章目录 禅道部署1.环境部署安装httpd和mariadb安装php 2.安装禅道首先进行httpd服务的配置安装禅道 禅道部署 1.环境部署 安装lamp环境 组件版本httpdyum安装mariadbyum安装phpphp-7.4.33 选择一个php版本就行&#xff0c;我们这里选择的是7.4.33 安装httpd和mariadb [r…...

️ Vulnhuntr:利用大型语言模型(LLM)进行零样本漏洞发现的工具

在网络安全领域&#xff0c;漏洞的发现和修复是保护系统安全的关键。今天&#xff0c;我要向大家介绍一款创新的工具——Vulnhuntr&#xff0c;这是一款利用大型语言模型&#xff08;LLM&#xff09;进行零样本漏洞发现的工具&#xff0c;能够自动分析代码&#xff0c;检测远程…...

【Android】多渠道打包配置

目录 简介打包配置签名配置渠道配置配置打包出来的App名称正式包与测试包配置 打包方式开发工具打包命令行打包 优缺点 简介 多渠道打包 是指在打包一个 Android 应用时&#xff0c;一次编译生成多个 APK 文件&#xff0c;每个 APK 文件针对一个特定的渠道。不同的渠道可能代表…...

Spring Boot Configuration和AutoConfiguration加载逻辑和加载顺序调整

在spring中, AutoConfiguration也是一个种Configuration,只是AutoConfiguration是不能使用proxy的。 而且spring对于两者的加载顺序也不是一视同仁,是有顺序的。spring会先加载@SpringBootApplication可达的且标注了@Configuration的类,这个过程会将@AutoConfiguration标注…...

点餐系统需求分析说明书(软件工程分析报告JAVA)

目录 1 引言 4 1.1 编写目的 4 1.2 项目背景 4 1.3 定义 4 1.4 预期的读者 5 1.5 参考资料 5 2 任务概述 5 2.1 目标 5 2.2 运行环境 5 2.3 条件与限制 6 3 数据描述 6 3.1 静态数据 6 3.2 动态数据 6 3.3 数据库介绍 6 3.4 对象模型 6 3.5 数据采集 7 4 动态模型 7 4.1 脚本 …...

Python条形图 | 指标(特征)重要性图的绘制

在数据科学和机器学习的工作流程中&#xff0c;特征选择是一个关键步骤。通过评估每个特征对模型预测能力的影响&#xff0c;我们可以选择最有意义的特征&#xff08;指标&#xff09;&#xff0c;从而提高模型的性能并减少过拟合。本文将介绍如何使用 Python 的 Seaborn 和 Ma…...

危险物品图像分割系统:一键训练

危险物品图像分割系统源码&#xff06;数据集分享 [yolov8-seg-GFPN&#xff06;yolov8-seg-CSwinTransformer等50全套改进创新点发刊_一键训练教程_Web前端展示] 1.研究背景与意义 项目参考ILSVRC ImageNet Large Scale Visual Recognition Challenge 项目来源AAAI Global…...

城市景色视频素材下载好去处

在制作短视频、Vlog 或商业宣传片时&#xff0c;城市景色视频素材能为作品增添现代感与活力。繁华都市、流光溢彩的夜景、清晨街道等都是展现城市魅力的好素材。那么城市景色视频素材去哪里下载呢&#xff1f; 蛙学网 是专为短视频创作者打造的素材平台&#xff0c;城市景色素材…...

基于SSM美容院管理系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;套餐类型管理&#xff0c;美容预约管理&#xff0c;生日提醒管理&#xff0c;管理员管理&#xff0c;系统管理 员工账号功能包括&#xff1a;系统首页&#xff0c;个人中心&#…...

Threejs 实现3D 地图(04)3d 地图的柱状图和文字显示

3d 地图的数据展示 代码仓库&#xff1a; King/threejs-3d-map 核心代码&#xff1a; function createText(feature, level, font) {if (feature.properties.name) {const [x_XYZ, y_XYZ] handleProject(feature.properties.center)// 缺点&#xff1a;首次渲染很慢 无法使…...

Oracle 第2章:安装与配置Oracle

安装与配置Oracle数据库是一项复杂但有序的过程。以下是对Oracle数据库安装与配置的概述&#xff0c;包括系统需求与硬件推荐&#xff0c;以及详细的安装步骤。 系统需求与硬件推荐 系统需求 在安装Oracle数据库之前&#xff0c;需要确保目标系统满足Oracle官方规定的最低要…...

动态规划 —— 斐波那契数列模型-解码方法

1. 解码方法 题目链接&#xff1a; 91. 解码方法 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/decode-ways/description/ 2. 题目解析 1. 对字母A - Z进行编码1-26 2. 11106可以解码为1-1-10-6或者11-10-6, 但是11-1-06不能解码 3. 0n不能解码 4. …...

PPT / Powerpoint中利用LaTeX输入公式

PPT / Powerpoint中利用LaTeX输入公式_ppt插入latex公式-CSDN博客文章浏览阅读2.8w次&#xff0c;点赞42次&#xff0c;收藏75次。新版的Word&#xff08;Office 2016后&#xff1f;&#xff09;是支持LaTeX公式输入的&#xff0c;但是Powerpoint并不支持。下面介绍如何利用。_…...

C++ 模板专题 - 类型擦除

一&#xff1a;概述 C 中的类型擦除&#xff08;Type Erasure&#xff09;是一种技术&#xff0c;允许你在不暴露具体类型信息的情况下&#xff0c;通过统一的接口处理不同的类型。这种技术常用于实现泛型编程&#xff0c;特别是在需要支持多种不同类型的情况下&#xff0c;如容…...

RuoYi-Vue项目 重点代码讲解

1. RuoYi-Vue项目 常规说明&#xff1a; ruoyi-admin&#xff1a;后台接口开发&#xff08;主要存放控制层相关代码&#xff09;ruoyi-common&#xff1a;通用工具ruoyi-framework&#xff1a;框架核心ruoyi-generator&#xff1a;代码生成&#xff08;可以移除&#xff09;r…...

pandas习题 024:用字典构造 DataFrame

编码题)用 Python 的字典构造一个 DataFrame,它有 a、b 两列,三行数据。其中 a 列值为 1、4、7,b 列值为 2、5、8,索引为 x、y、z。 即: ‘’’ a b x 1 2 y 4 5 z 7 8 ‘’’ import pandas as pddf = pd.DataFrame({a: [1, 4,...

如何在Node.js中执行解压缩文件操作

一、解压文件 1.安装依赖&#xff1a; 安装adm-zip依赖包&#xff1a;npm install adm-zip --save 安装iconv-lite依赖包&#xff1a;npm install iconv-lite --save 解压前的file文件夹结构&#xff1a; update-1.0.2.zip压缩包内容&#xff1a; 2.在depresssFile.js文件&…...

梦熊 CSP-S模拟赛 T3 youyou 的序列 II

原题链接 题目大意 给定一个长度为 n 的非负整数序列 a &#xff0c;初始时所有数字均被标记为蓝色&#xff0c;youyou 和 yy 轮流对序列 a 进行操作&#xff0c;由 youyou 开始。 • 如果当前是 youyou 的回合&#xff0c;那么他可以至多选择连续的 c 1 个数…...

记录下docker部署gitlab-ce-17.5版本及客户端git拉取方式配置

服务端部署 # 提前拉取镜像 docker pull gitlab/gitlab-ce:17.5.0-ce.0docker run -d \ --name gitlab \ --hostname gitlab.test.cn \ -p 443:443 \ -p 88:80 \ -p 2222:22 \ --restartalways \ -v /data/gitlab/config:/etc/gitlab \ -v /data/gitlab/logs:/var/log/gitlab …...

opencv-platform实现人脸识别

和同事接触了下甲方,对方算是一个资源整合的自由人&#xff0c;手里有项目&#xff0c;然后认识些开发就聊下有什么事情可以做的&#xff0c;对方聊了下做人脸签到&#xff0c;或者说人脸打开。就这方面我做了下简单的了解。做了个java小demo。 我们常用的人脸识别的摄像头屏幕…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

离线语音识别方案分析

随着人工智能技术的不断发展&#xff0c;语音识别技术也得到了广泛的应用&#xff0c;从智能家居到车载系统&#xff0c;语音识别正在改变我们与设备的交互方式。尤其是离线语音识别&#xff0c;由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力&#xff0c;广…...

云原生周刊:k0s 成为 CNCF 沙箱项目

开源项目推荐 HAMi HAMi&#xff08;原名 k8s‑vGPU‑scheduler&#xff09;是一款 CNCF Sandbox 级别的开源 K8s 中间件&#xff0c;通过虚拟化 GPU/NPU 等异构设备并支持内存、计算核心时间片隔离及共享调度&#xff0c;为容器提供统一接口&#xff0c;实现细粒度资源配额…...