Skip to content

离线部署文档

Nginx

安装 Nginx

内网镜像源是没有 Nginx 的,需要在网站先下载好。https://nginx.org/en/download.html

推荐以管理员身份 root 进行安装,其余软件我均使用身份 tksm 进行安装

  1. 解压安装包,并切换到 nginx 目录下

    bash
    $ tar -zxvf nginx-1.22.1.tar.gz
    $ cd nginx-1.22.1
    $ pwd
    /home/tksm/intercity/nginx-1.22.1
  2. 编译 Nginx 的安装目录

    bash
    $ ./configure --prefix=/usr/local/nginx
    1. 报错 1:服务器缺少 gcc 编译器

      image-20240227161230653

      • 解决方案:安装 gcc 编译器和 make 命令
      bash
      [root]$ yum install -y gcc gcc-c++ make
    2. 报错 2:服务器环境缺少 nginx 基本环境

      image-20240227152103270

      • 解决方案:安装 nginx 所需的基础环境
      bash
      $ yum -y install openssl openssl-devel pcre gd-devel zlib-devel

      执行编译,编译成功

      bash
      $ ./configure --prefix=/usr/local/nginx

      + OpenSSL library is not used 可以忽略不管,后期需要可再次进行处理

      image-20240227155359774

    3. 安装 Nginx

      bash
      $ make && make install

      显示离开目录,即安装成功

      image-20240227161333582

      nginx 启动命令目录为

      bash
      /usr/local/nginx/sbin/nginx

启动 Nginx

可以直接进入安装目录启动 Nginx,不过不推荐这样,最好把 Nginx 添加到服务中

  • 手动创建 nginx.service
bash
$ yum install -y vim
$ vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

添加可执行权限,并重新加载服务

bash
$ chmod +x /usr/lib/systemd/system/nginx.service
$ systemctl daemon-reload

启动 Nginx,并设置开启自启

bash
$ systemctl start nginx
$ systemctl enable nginx

查看 Nginx 状态

image-20240227160621897

前端部署目录结构

配置我已经修改好,需要额外增加配置,请把配置文件放到 conf 目录下

web 目录存放前端静态资源文件

image-20240228094447919

启动后问题

无法访问页面

  • 解决方案:把服务器防火墙关闭
bash
$ systemctl stop firewalld
$ systemctl disable firewalld

页面报 500。访问资源权限被拒绝,因为 worker 进程所属于 nobody 用户

image-20240227165222003

image-20240227165415549

  • 解决方案:在 conf 文件里增加如下内容即可
bash
$ vim /usr/local/nginx/conf/nginx.conf
user root;

Java

安装 Java

在官网下载 Java 安装包 https://www.oracle.com/java/technologies/download

  • jdk8,需要先注册 Oracle 账号才能下载,官网下载还是很快的

image-20231121164201283

bash
$ tar -zxvf jdk-8u391-linux-x64.tar.gz
$ pwd
/home/tksm/software/jdk1.8.0_391/
# 给jenkins 使用
$ tar -zxvf jdk-17_linux-x64_bin.tar.gz

修改环境变量

修改环境变量文件

bash
$ cd ~
$ vim .bashrc
export JAVA_HOME=/home/tksm/software/jdk1.8.0_391
export PATH=$JAVA_HOME/bin:$PATH
$ source .bashrc

检查是否配置成功

image-20240227173713835

Jenkins

安装 Jenkins

启动 Jenkins

  • 如需指定端口号,可以追加 --httpPort=xxx 来指定
bash
nohup /home/tksm/software/jdk-17.0.9/bin/java -jar /home/tksm/software/jenkins.war >/dev/null 2>&1 &

访问 http://198.218.34.251:8080

image-20240227174043175

创建用户:

  • 账号:jpadmin
  • 密码:afcuser

安装插件

...暂时不安装额外插件

MongoDB

安装 MongoDB

去官网选择对应版本进行下载

image-20231127105256517

bash
$ tar -zxvf mongodb-linux-x86_64-rhel80-3.6.23.tgz
$ pwd
/home/tksm/software/mongodb-linux-x86_64-rhel80-3.6.23

创建 logs 和 data 目录,创建 mongodb.log 文件

bash
$ cd ~
$ mkdir data
$ cd data
$ mkdir -p mongodb/logs mongodb/data
$ touch mongodb/logs/mongodb.log

修改环境变量

bash
$ cd ~
$ vim .bashrc
export MONGODB_HOME=/home/tksm/software/mongodb-linux-x86_64-rhel80-3.6.23
export PATH=$MONGODB_HOME/bin:$PATH
$ source .bashrc

编辑启动脚本

bash
$ mongod -f /home/tksm/software/mongo.conf

image-20240228092540088

修改密码

登录 mongodb,默认没有密码直接登录

bash
$ mongo

创建用户

sql
use admin;
db.createUser({user:'root', pwd:'mongo@123', roles:[{role:'root', db:'admin'}]});
db.createUser({user:'admin',pwd:'admin@123',roles:[{role:'root',db:'admin'}]});

# 验证账号是否授权成功, 1 验证成功,0 验证失败
db.auth("root","mongo@123");
db.auth("admin","admin@123");

image-20240228092517854

Node

安装 Node

去官网选择对应版本进行下载

image-20240228092650800

bash
$ tar -zxvf node-v16.20.0-linux-x64.tar.gz
$ pwd
/home/tksm/software/node-v16.20.0-linux-x64

修改环境变量

bash
$ cd ~
$ vim .bashrc
export NODE_HOME=/home/tksm/software/node-v16.20.0-linux-x64
export PATH=$NODE_HOME/bin:$PATH
$ source .bashrc

image-20240228093244584

YAPI

设置私库地址

bash
$ npm config set registry http://198.216.41.86:9094/repository/all_node_modules/

安装 pm2

bash
$ npm i -g pm2

启动 YAPI

bash
$ pm2 start /home/tksm/software/yapi/vendors/server/app.js --name yapi

查看启动进程

bash
$ pm2 list

image-20240228094208803

SYN

下载必须文件以及依赖文件:

安装 SVN

使用 root 账号,创建 svn 账号,之后切换 svn 账号进行登录

bash
[root]
$ useradd svn
$ passwd svn
Tkykp3q#2019

把压缩文件都放在 software 目录里,之后解压文件

bash
$ tar -zxvf apr-1.7.4.tar.gz
$ tar -zxvf apr-util-1.6.3.tar.gz
$ tar -zxvf sqlite-autoconf-3450100.tar.gz
$ tar -xvf zlib-1.2.11.tar.xz
$ tar -zxvf subversion-1.14.3.tar.gz

安装 apr-1.7.4

bash
$ cd apr-1.7.4
$ pwd
/home/svn/software/apr-1.7.4
$ ./configure --prefix=/home/svn/software/apr-1.7.4
$ make && make install

安装 apr-util-1.6.3

bash
$ cd apr-util-1.6.3
$ pwd
/home/svn/software/apr-util-1.6.3
$ ./configure --prefix=/home/svn/software/apr-util-1.6.3 --with-apr=/home/svn/software/apr-1.7.4
$ make && make install

安装 apr-util-1.6.3 时出现报错

  • 解决方案:安装 expat 依赖

    bash
    $ yum install -y expat expat-devel

image-20240301144238925

安装 zlib

bash
$ cd zlib-1.2.11
$ pwd
/home/svn/software/zlib-1.2.11
$ ./configure --prefix=/home/svn/software/zlib-1.2.11

安装 subversion

  • 安装之前需要将 aqlite 包 移到 subversion 目录
bash
$ mkdir subversion-1.14.3/sqlite-amalgamation
$ mv sqlite-autoconf-3450100/* subversion-1.14.3/sqlite-amalgamation
$ cd subversion-1.14.3
$ pwd
/home/svn/software/subversion-1.14.3
$ ./configure --prefix=/home/svn/software/subversion-1.14.3 --with-apr=/home/svn/software/apr-1.7.4 --with-apr-util=/home/svn/software/apr-util-1.6.3 --with-zlib=/home/svn/software/zlib-1.2.11 --with-lz4=internal --with-utf8proc=internal
$ make && make install

安装 subversion 时出现报错,无法生成 Makefile 文件:

  • 追加 --with-lz4=internal 参数

image-20240301145744121

  • 追加 --with-utf8proc=internal 参数

image-20240301145847510

修改环境变量

修改环境变量文件

bash
$ cd ~
$ vim .bashrc
export SVN_HOME=/home/svn/software/subversion-1.14.3
export PATH=$SVN_HOME/bin:$PATH
$ source .bashrc

检查是否配置成功

image-20240301150920087

SVN 配置修改

在 subversion 中包含有服务端和客户端,在执行命令时需要分清服务端命令和客户端命令

服务端命令:

  • svnserver:控制 svn 系统服务的启动
  • svnadmin:svn 版本库的创建/导入/导出/删除等
  • svnlook:查看版本库的信息

客户端命令:

  • svn:版本库的检出、更新、提交、重定向等

首先,需要创建 svn 版本库

bash
$ pwd
/home/svn
$ mkdir data
$ svnadmin create /home/svn/data

在创建的这个版本库下会自动创建 svn 相关的配置文件

image-20240301152846186

切换到 conf 目录下,修改 svnserve 配置文件

bash
$ cd data/conf
$ vim svnserve.conf

image-20240301153202823

添加用户名和密码

  • 格式:用户名 = 密码
bash
$ vim passwd
[users]
admin = admin123
usera = usera123
userb = userb123
other = other123

配置用户权限

  • groups:用户组配置,该配置的格式为组名等于用户名列表,每个用户需要用逗号隔开,每一行表示一个用户组
  • [/]:指定根目录配置用户组权限:
    • 读(r):在客户端可以跟新服务器上的代码到本地
    • 写(w):在客户端可以提交代码到服务器
bash
$ vim authz
[groups]
admin = admin
user = usera,userb
other = other

[/]
@admin = rw
@user = rw
@other =

启动 SVN

bash
$ svnserve -d -r /home/svn/data

重启 svn

  • 注意:pid 需要改为你看到的
bash
$ ps -ef | grep svnserve
svn        82007       1  0 16:01 ?        00:00:00 svnserve -d -r data/
svn        82073   20493  0 16:13 pts/0    00:00:00 grep svnserve
$ kill -9 82007
$ svnserve -d -r /home/svn/data

常备不懈,才能有备无患