Fork me on GitHub

Ubuntu 饥荒服务器搭建教程

Ubuntu 饥荒服务器搭建教程

服务器: ubuntu-18.04-amd64-20220507111916

安装依赖

1
sudo apt-get install libstdc++6:i386 libgcc1:i386 libcurl4-gnutls-dev:i386

安装 steamCMD

1
2
3
4
mkdir -p ~/steamcmd/
cd ~/steamcmd/
wget "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz"
tar -xvzf steamcmd_linux.tar.gz

注册账号

依照官网教程注册 Klei 账号,注册服务器

下载 MyDediServer/ 文件夹

MyDediServer/ 放入 ~/.klei/DoNotStarveTogether/ 路径

设置入口脚本

1
vim ~/run_dedicated_servers.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/bash

steamcmd_dir="$HOME/steamcmd"
install_dir="$HOME/dontstarvetogether_dedicated_server"
cluster_name="MyDediServer"
dontstarve_dir="$HOME/.klei/DoNotStarveTogether"

function fail()
{
echo Error: "$@" >&2
exit 1
}

function check_for_file()
{
if [ ! -e "$1" ]; then
fail "Missing file: $1"
fi
}

cd "$steamcmd_dir" || fail "Missing $steamcmd_dir directory!"

check_for_file "steamcmd.sh"
check_for_file "$dontstarve_dir/$cluster_name/cluster.ini"
check_for_file "$dontstarve_dir/$cluster_name/cluster_token.txt"
check_for_file "$dontstarve_dir/$cluster_name/Master/server.ini"
check_for_file "$dontstarve_dir/$cluster_name/Caves/server.ini"

./steamcmd.sh +force_install_dir "$install_dir" +login anonymous +app_update 343050 validate +quit

check_for_file "$install_dir/bin64"

cd "$install_dir/bin64" || fail

run_shared=(./dontstarve_dedicated_server_nullrenderer_x64)
run_shared+=(-console)
run_shared+=(-cluster "$cluster_name")
run_shared+=(-monitor_parent_process $$)

"${run_shared[@]}" -shard Caves | sed 's/^/Caves: /' &
"${run_shared[@]}" -shard Master | sed 's/^/Master: /'

脚本权限

1
chmod u+x ~/run_dedicated_servers.sh

运行入口脚本

1
2
cd ~
~/run_dedicated_servers.sh

可能的问题

库缺失

1
./dontstarve_dedicated_server_nullrenderer: error while loading shared libraries: libcurl-gnutls.so.4: cannot open shared object file: No such file or directory

解决

1
2
apt-get install libcurl4-gnutls-dev
dpkg --add-architecture i386

基于 Ubuntu R 语言环境的 Laravel 服务器部署

基本信息

服务器:百度云,2核/4GB内存/80GB磁盘/6Mbps带宽/Ubuntu ( ubuntu-20.04-amd64-20220507112023 )

php: ^8.0

Laravel:^7.0.1

操作系统选择

Debian,Centos 在 R 语言的部署上各有问题,选择 Ubuntu ( ubuntu-20.04-amd64-20220507112023 )

一. R 语言安装

官方文档

1. 获取最新版本的 R 语言(^4.*)

1
2
3
4
5
6
7
8
9
10
11
12
13
# 检查更新
$ sudo apt update -qq

# 安装 dirmngr - 软件证书的管理工具
$ sudo apt install --no-install-recommends software-properties-common dirmngr

# add the signing key (by Michael Rutter) for these repos
# To verify key, run gpg --show-keys /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# Fingerprint: E298A3A825C0D65DFD57CBB651716619E084DAB9
$ wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc

# add the R 4.0 repo from CRAN -- adjust 'focal' to 'groovy' or 'bionic' as needed
$ sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/"

2. 安装 R 语言

1
2
# 安装 R 语言
$ sudo apt install --no-install-recommends r-base

3. 测试 R 语言

在此页面应能看到 R 的版本

1
2
# 打开 R 交互式窗口
$ R

4. 安装需要的依赖包

1
2
# 打开 R 交互式窗口
$ R
1
2
3
4
# R 的交互命令行
> install.packages("dependencesA")
> install.packages("dependencesB")
> install.packages("dependencesC")

二. 安装宝塔

宝塔是一个较为简单快捷的部署工具

1. 选择在线安装

记住给的服务器地址和登陆密码!

jzvfxg.png

2. 进入管理页面

(1) 选择 [软件商店],一键安装 nginx 1.21.0,php-8

(2) 选择 [网站],添加站点,域名为网站域名

(3) 选择 [软件商店],php 设置,安装扩展,安装 fileinfo 插件,若报错 Cannot find **auto**conf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script

则运行

1
$ apt-get install autoconf -y

以安装

(4) 选择 [软件商店],php 设置,删除以下被禁用的函数:

1
2
3
4
putenv
pcntl_signal
proc_open
exec

三. 部署项目代码

1
2
3
4
5
6
7
8
9
10
11
12
13
# 进入目录,参数应与域名相符
$ cd /www/wwwroot/siteRootPath

# clone 项目
$ git clone https://github.com/Squ1rrel-K/getLCAI_web.git

$ cd getLCAI_web
$ composer install
$ npm install

# 建立 .env 文件,生成密匙
$ php -r "file_exists('.env') || copy('.env.example', '.env');"
$ php artisan key:generate --ansi

进入宝塔运维主页,选择 [网站],添加站点,域名为网站域名,修改网站目录的运行目录为 /public

四. 管理权限问题

普通文件夹权限为 755 即可

storage,resources,scripts 权限必须至少 775

1
2
3
4
5
6
$ cd /www/wwwroot/siteRootPath/getLCAI_web

$ chmod -R 775 storage/
$ chmod -R 777 storage/logs/
$ chmod -R 775 resources/
$ chmod -R 775 scripts/

五. 优化项目部署

1
2
3
4
5
$ cd /www/wwwroot/siteRootPath/getLCAI_web

$ php artisan config:cache # 生成配置缓存
$ php artisan route:cache # 生成路由缓存
$ npm run production # 运行 npm 产品环境

健身笔记

分化训练

原则

最高原则

健身先健脑

科学健身

避免受伤

分化训练 - 3 分化

胸 + 三头

背 + 二头

肩膀

平常多踢球,增强臀部,腿部力量

哑铃杠铃卧推

10 kg,12个一组,4组

上斜杠铃哑铃卧推

单侧大重量绳索架胸

俯卧撑

臂屈伸

Google软件测试之道读书笔记

Google软件测试之道 读书笔记

测试方法不当,会扼杀一个本有机会成功的公司,拖慢产品速度

我们需要把开发跟测试融合为一个整体

有时候测试跟开发互相交织,有时又完全分离

质量不等于测试,质量更像是一种预防行为,而不是检测

开发人员要对自己写的代码负责,比专职测试人员更适合做测试工作

Google并没有使用代码测试、集成测试、系统测试这些命名方式,而是使用小型测试、中型测试、大型测试这样的称谓,着重强调测试的范畴规模而非形式。

  • Copyrights © 2020-2023 Jack Kong
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信