我们提供安全,免费的手游软件下载!
因为服务器前段时间一直受到木马攻击,甚至被用于挖矿,我决定重装系统。在此过程中,我整理了服务器需要的各项配置清单。
我使用init.sh脚本创建了我的几个项目目录,并安装了docker、unzip和nginx。
#!/bin/bash
yum install -y
# 定义多级目录路径数组
directories=(
"/home/logs"
"/www/xxx-platform"
"/www/xxx-platform-forntend"
"/wwww/test/xxx-platform"
"/www/test/xxx-platform-forntend"
)
# 循环创建每个目录
for dir in "${directories[@]}"; do
# 使用-p选项创建目录,如果目录已经存在则不报错
mkdir -p "$dir"
# 检查目录是否创建成功
if [ -d "$dir" ]; then
echo "目录 $dir 创建成功。"
else
echo "目录 $dir 创建失败。"
fi
done
# 安装Docker
echo "开始安装Docker..."
sudo yum update -y
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
# 启动Docker服务
sudo systemctl start docker
# 验证Docker是否安装成功
if [ -x "$(command -v docker)" ]; then
echo "Docker 安装成功。"
else
echo "Docker 安装失败。"
fi
yum install -y unzip
sudo yum install -y epel-release
sudo yum install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
然后我将我的step.sh脚本上传到我的两个java项目中,以下是prod环境的step.sh脚本示例:
#!/bin/sh
docker stop java17-container
docker rm java17-container
docker rmi java17-image
docker build -t java17-image .
docker run -dit -p 12001:12001 -p 9998:9998 -v /www/xxx-platform/log:/home/logs/xxx-platform --name java17-container --restart=always java17-image
最后,我没有对nginx做任何修改,直接将之前留下的几个conf文件上传到/etc/nginx/conf.d/目录中,其中包括两个前端和两个后端的配置。以下是一个后端配置的示例:
server {
listen 80;
server_name platformapi.xxx.tech;
index index.html;
client_max_body_size 1024M;
error_log /home/nginx/logs/xxx-platform-error.log;
access_log /home/nginx/logs/xxx-platform.log;
location / {
proxy_pass http://127.0.0.1:12001/;
}
}
然后执行重启nginx命令:
systemctl restart nginx
附注:因为项目已经打包并上传至jenkins,我只需要在那里修改连接服务器的凭证密码,然后直接推送打好的包并触发我的step脚本即可。所以,
docker ps
没有问题。
热门资讯