133 words
1 minute
Website Management Script
越懒惰越勤奋,自动化真是懒人福音
部署删除脚本
一共用了两个脚本,以及一个列表(用于存放服务项),感觉有点模块化?
之后只用在列表里添加项目,以及创建一个命名相同的目录,再在目录里放一个docker-compose.yaml文件即可。
#!/bin/bash
if [ -f "scripts/.env" ]; then source scripts/.envfi
SERVICE="$1"
create_container() { local target="$1" for service in "${SERVICES[@]}"; do if [[ "$service" == "$target" ]]; then echo "Processing service: $service" cd $service && sudo docker compose up -d && cd .. return 0 fi done
echo "Service not found: $target" return 1}
create_all_containers() { for service in "${SERVICES[@]}"; do echo "Processing service: $service" cd $service && sudo docker compose up -d && cd .. 2>/dev/null || echo "Failed to process service: $service" done}
if [[ "$SERVICE" == "all" ]]; then create_all_containerselse create_container "$SERVICE"fi#!/bin/bash
if [ -f "scripts/.env" ]; then source scripts/.envfi
SERVICE="$1"
delete_container() { local target="$1" for service in "${SERVICES[@]}"; do if [[ "$service" == "$target" ]]; then echo "Processing service: $service" sudo docker stop $service && sudo docker rm $service return 0 fi done
echo "Service not found: $target" return 1}
delete_all_containers() { for service in "${SERVICES[@]}"; do echo "Processing service: $service" sudo docker stop $service 2>/dev/null && sudo docker rm $service 2>/dev/null || echo "Failed to process service: $service" done}
if [[ "$SERVICE" == "all" ]]; then delete_all_containerselse delete_container "$SERVICE"fiSERVICES=("hexo" "nginx")备份打包脚本
设置个定时,自动执行该脚本,至于如何设置,不是这里应该解决的QWQ。
#!/bin/bash
if [ -f "scripts/.env" ]; then source scripts/.envfi
rm -rf backup-docker.tar.gztar -czvf backup-docker.tar.gz "${SERVICES[@]}" scripts Website Management Script
https://blog.yremmmm.com/posts/website-script/ Some information may be outdated









