首页
文章导航
导航
壁纸
留言板
更多
直播
友链
统计
关于
Search
1
【白嫖攻略】在cloudflare搭建域名邮箱并转发
5 阅读
2
BitsFlowCloud PHX 高延迟解决
5 阅读
3
Microsoft Office下载地址合集——微软官方原版离线安装下载
5 阅读
4
Claw Cloud 免费容器平台部署哪吒面板教程
5 阅读
5
Sub-Hub 基于 Cloudflare Worker+D1数据库的简洁订阅管理器,摒弃第三方订阅转换!
5 阅读
默认
日常
学习
技术
登录
Search
标签搜索
cloudflare
白嫖
docker
脚本
安装
CF
壁纸
图片
Linux
Caddy
节点
代码
哪吒
域名
NAT
HTML
github
LXC
手机壁纸
网页
ws01
累计撰写
121
篇文章
累计收到
45
条评论
首页
栏目
默认
日常
学习
技术
页面
文章导航
导航
壁纸
留言板
直播
友链
统计
关于
搜索到
3
篇与
的结果
2025-08-22
★★★在Debian 11、12系统,用docker搭建Caddy + PHP动、静态网站
在Debian 11、12系统,用docker搭建Caddy + PHP动、静态网站文件夹 home/html/web/web1 一、常规安装,一个网站,不用数据库【推荐用第二或第三个方式 多站点 方式安装,便于以后在vps上搭建更多网站】,方法可行。 目录结构 (建议)/home/html/web/web1/├── docker-compose.yml├── Caddyfile└── public/ # 网站文件 (index.php, index.html等)1、更新系统sudo apt update && sudo apt upgrade -y2、安装 Docker 和 Docker Composesudo apt install -y docker.io docker-compose3、创建网站目录a、灵活安装sudo mkdir -p /home/html/web/web1 cd /home/html/web/web1或 b、简单安装【推荐】创建目录结构# 创建目录结构 sudo mkdir -p /home/html/web/web1/public创建 Caddyfile,解析好域名的,:80可替换域名example.com# 创建 Caddyfile cat << 'EOF' | sudo tee /home/html/web/web1/Caddyfile :80 { root * /srv php_fastcgi php:9000 file_server } EOF创建测试 PHP 文件# 创建测试 PHP 文件 cat << 'EOF' | sudo tee /home/html/web/web1/public/index.php <?php phpinfo(); EOF4、编写 docker-compose.ymlversion: "3.8" services: caddy: image: caddy:latest container_name: caddy_web1 restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./public:/srv - caddy_data:/data - caddy_config:/config depends_on: - php php: image: php:8.2-fpm container_name: php_web1 restart: unless-stopped volumes: - ./public:/srv volumes: caddy_data: caddy_config:5、编写 Caddyfile,如果第三步中已安装好域名的,此步省略example.com { root * /srv php_fastcgi php:9000 file_server }6、放置测试文件,如果第三步中已放置测试文件,此步省略echo "<?php phpinfo(); ?>" > /home/html/web/web1/public/index.php7、启动服务cd /home/html/web/web1 sudo docker-compose up -d查看容器状态:sudo docker ps8、访问测试打开浏览器访问 http://服务器IP/如果绑定了域名(并改了 Caddyfile),访问 https://你的域名/二、多站点 Caddyfile 模板【不用数据库】,以三个web1、web2、web3为例,更多个网站类推,方法可行目录结构建议 /home/html/web/├── web1/│ ├── public/ # 网站1的文件│ ├── Caddyfile.web1 # 网站1配置├── web2/│ ├── public/ # 网站2的文件│ ├── Caddyfile.web2 # 网站2配置├── web3/│ ├── public/ # 网站3的文件│ ├── Caddyfile.web3 # 网站3配置└── docker-compose.yml # 统一的 compose└── Caddyfile # 主配置,引用各站点1、更新系统sudo apt update && sudo apt upgrade -y2、安装 Docker 和 Docker Composesudo apt install -y docker.io docker-compose3、创建三个目录结构并给予权限【 更多网站类似添加 】网站1sudo mkdir -p /home/html/web/web1/public sudo chmod -R 755 /home/html/web/web1/public 网站2sudo mkdir -p /home/html/web/web2/public sudo chmod -R 755 /home/html/web/web2/public网站3sudo mkdir -p /home/html/web/web3/public sudo chmod -R 755 /home/html/web/web3/public4、在文件夹 /home/html/web/ 创建统一的 docker-compose.yml【 更多网站类似添加 】version: "3.8" services: caddy: image: caddy:latest container_name: caddy_main restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 - caddy_data:/data - caddy_config:/config depends_on: - php php: image: php:8.2-fpm container_name: php_main restart: unless-stopped volumes: - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 volumes: caddy_data: caddy_config:5、总控 Caddyfile【 更多网站类似添加 】# Web1 - 用域名 web1.example.com { root * /srv/web1 php_fastcgi php:9000 file_server } # Web2 - 用域名 web2.example.com { root * /srv/web2 php_fastcgi php:9000 file_server } # Web3 - 用 IP + 端口(测试用) :8080 { root * /srv/web3 php_fastcgi php:9000 file_server }6、启动cd /home/html/web sudo docker-compose up -d7、快速测试文件【 更多网站类似添加,个别vps可能添加不上,用上传方式 】echo "<?php echo 'Hello Web1!'; ?>" | sudo tee /home/html/web/web1/public/index.phpecho "<?php echo 'Hello Web2!'; ?>" | sudo tee /home/html/web/web2/public/index.phpecho "<?php echo 'Hello Web3!'; ?>" | sudo tee /home/html/web/web3/public/index.php三、如果 需要数据库 ,在方式二的基础上修改, docker-compose.yml 添加 db 项,web主目录下新建 php 文件夹,php 文件夹添加 Dockerfile 文件, 注意修改数据库相关密码 目录结构/home/html/web/├── web1/│ └── public/ # 放 Typecho├── web2/│ └── public/├── web3/│ └── public/├── docker-compose.yml├── php/│ └── Dockerfile└── Caddyfile1、统一的 docker-compose.yml 【 注意修改数据库相关密码 】version: "3.8" services: caddy: image: caddy:latest container_name: caddy_main restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 - caddy_data:/data - caddy_config:/config depends_on: - php php: build: ./php image: php:8.2-fpm container_name: php_main restart: unless-stopped volumes: - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 depends_on: - db db: image: mariadb:10.7 container_name: mariadb_web1 restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: rootpass123 MYSQL_DATABASE: typecho MYSQL_USER: typecho MYSQL_PASSWORD: typechopass volumes: - db_data:/var/lib/mysql volumes: caddy_data: caddy_config: db_data:2、php/DockerfileFROM php:8.2-fpm # 安装 MySQL 扩展 RUN docker-php-ext-install pdo_mysql mysqli # 可选:安装 gd、zip 等(上传图片/压缩包可能用到) RUN apt-get update && apt-get install -y libjpeg-dev libpng-dev libzip-dev \ && docker-php-ext-install gd zip WORKDIR /srv 访问 http://web1.example.com,进入安装向导。数据库地址: db 数据库名: typecho 用户: typecho 密码: typechopass 2、安装 Typecho 命令,也可以下载修改好后上传cd /home/html/web/web1/public wget https://github.com/typecho/typecho/archive/refs/tags/v1.2.1.zip -O typecho-1.2.1.zip unzip typecho-1.2.1.zip mv typecho-1.2.1/* ./ rm -rf typecho-1.2.1 typecho-1.2.1.zip 3、启动cd /home/html/web sudo docker-compose up -d四、如果搭建网站中需要两个数据库【三个数据库或更多数据库类推】,例如,安装两个Typecho1、一个数据库服务,多个数据库docker-compose.yml(推荐方案)version: "3.8" services: caddy: image: caddy:latest container_name: caddy_main restart: unless-stopped ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 - caddy_data:/data - caddy_config:/config depends_on: - php php: image: php:8.2-fpm container_name: php_main restart: unless-stopped volumes: - ./web1/public:/srv/web1 - ./web2/public:/srv/web2 - ./web3/public:/srv/web3 depends_on: - db db: image: mariadb:10.6 container_name: mariadb_main restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: rootpass123 volumes: - db_data:/var/lib/mysql volumes: caddy_data: caddy_config: db_data:2、初始化两个数据库启动容器后进入 MariaDB:docker exec -it mariadb_main mysql -uroot -p输入 rootpass123 后,创建两个数据库和用户:CREATE DATABASE typecho1; CREATE DATABASE typecho2; CREATE USER 'typecho1'@'%' IDENTIFIED BY 'pass1'; CREATE USER 'typecho2'@'%' IDENTIFIED BY 'pass2'; GRANT ALL PRIVILEGES ON typecho1.* TO 'typecho1'@'%'; GRANT ALL PRIVILEGES ON typecho2.* TO 'typecho2'@'%'; FLUSH PRIVILEGES;然后【实际安装时用 Pdo驱动SQLite适配器安装, SQLite原生函数适配器安装】:web1 Typecho 安装时填:数据库名 typecho1,用户 typecho1,密码 pass1web2 Typecho 安装时填:数据库名 typecho2,用户 typecho2,密码 pass2五、最小化的 Typecho Dockerfile + docker-compose.yml 示例,放到 /home/html/web/web1/ 下就能直接跑【可以,本方法安装步骤 专门链接 】目录结构(推荐)/home/html/web/web1/├── docker-compose.yml├── Caddyfile├── php/│ └── Dockerfile└── data/ (安装后数据库文件会自动生成)1、docker-compose.ymlversion: '3.9' services: caddy: image: caddy:2-alpine container_name: caddy_web1 ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./site:/srv - caddy_data:/data - caddy_config:/config depends_on: - php php: build: ./php container_name: php_web1 volumes: - ./site:/srv depends_on: - db db: image: mariadb:10.7 container_name: mariadb_web1 restart: always environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: typecho1 MYSQL_USER: typecho MYSQL_PASSWORD: typechopass volumes: - ./data:/var/lib/mysql volumes: caddy_data: caddy_config:2、Caddyfile文件:80 { root * /srv php_fastcgi php:9000 file_server }或# Web1 - 用域名 web1.example.com { root * /srv/web1 php_fastcgi php:9000 file_server }3、php/DockerfileFROM php:8.1-fpm RUN docker-php-ext-install pdo pdo_mysql mysqli WORKDIR /srv4、下载 Typecho,不是在web1文件夹,是在site文件夹cd /home/html/web/web1 mkdir site cd site wget https://github.com/typecho/typecho/releases/download/v1.2.1/typecho.zip unzip typecho.zip rm typecho.zip5、启动cd /home/html/web/web1 docker-compose up -d然后访问服务器 http://你的IP/或域名 就能进入 Typecho 安装页面【安装时uplads文件夹没权限,单独设置一下,config.inc.php文件也可能没创建权限,手动创建一个就行】。数据库信息填写:数据库地址:db数据库名:typecho1用户名:typecho密码:typechopass⚡ 如果你要再装第二个 Typecho(web2),只需要复制一份 /home/html/web/web1/ 为 /home/html/web/web2/,然后在 docker-compose.yml 里修改:容器名(caddy_web2、php_web2、mariadb_web2)数据库名(typecho2)端口映射(比如 8080:80)六、多个网站web1、web2 → 各自安装一个 Typecho(需要数据库)web3、web4 → 普通动态 PHP 网站(不需要数据库)全部共用同一个 Caddy 容器,不同的域名 / 目录对应不同的网站网站目录结构(在 /home/html/web/ 下)web1/ ← Typecho 站点 1web2/ ← Typecho 站点 2web3/ ← 动态 PHP 站点web4/ ← 动态 PHP 站点1、在 /home/html/ 下创建目录:mkdir -p /home/html/{web1,web2,web3,web4,db1_data,db2_data,caddy_data,caddy_config} 2、把 docker-compose.yml 和 Caddyfile 放在 /home/html/3、下载 Typecho 程序包到 web1/ 和 web2/ 目录,解压4、完整的 docker-compose.yml 示例services: caddy: image: caddy:2 container_name: caddy restart: always ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - ./caddy_data:/data - ./caddy_config:/config - ./web1:/srv/web1 - ./web2:/srv/web2 - ./web3:/srv/web3 - ./web4:/srv/web4 depends_on: - php php: image: php:8.2-fpm container_name: php-fpm restart: always volumes: - ./web1:/srv/web1 - ./web2:/srv/web2 - ./web3:/srv/web3 - ./web4:/srv/web4 working_dir: /srv command: php-fpm # Typecho 数据库 1 db1: image: mariadb:10.6 container_name: db1 restart: always environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: typecho1 MYSQL_USER: user1 MYSQL_PASSWORD: pass1 volumes: - ./db1_data:/var/lib/mysql # Typecho 数据库 2 db2: image: mariadb:10.6 container_name: db2 restart: always environment: MYSQL_ROOT_PASSWORD: rootpass MYSQL_DATABASE: typecho2 MYSQL_USER: user2 MYSQL_PASSWORD: pass2 volumes: - ./db2_data:/var/lib/mysql 5、Caddyfile放在 /home/html/Caddyfile,不同网站对应不同文件夹:# web1 - Typecho 1 web1.example.com { root * /srv/web1 php_fastcgi php:9000 file_server } # web2 - Typecho 2 web2.example.com { root * /srv/web2 php_fastcgi php:9000 file_server } # web3 - 普通 PHP 动态站 web3.example.com { root * /srv/web3 php_fastcgi php:9000 file_server } # web4 - 普通 PHP 动态站 web4.example.com { root * /srv/web4 php_fastcgi php:9000 file_server } 6、启动服务:cd /home/html docker-compose up -d7、浏览器访问:http://web1.example.com → 使用数据库 db1,连接参数:数据库主机: db1用户名: user1密码: pass1数据库: typecho1http://web2.example.com → 使用数据库 db2,连接参数:数据库主机: db2用户名: user2密码: pass2数据库: typecho2
2025年08月22日
0 阅读
0 评论
0 点赞
2025-06-29
Linux 重新安装使用
Linux 重新安装使用github项目 一.安装前准备 如果你不是root用户,请尝试执行以下命令切换获取root用户权限:sudo -s切换到root用户的默认方向cd ~然后继续下载并执行这个脚本。依赖项和操作系统支持以下列表,以安装到脚本支持的操作系统:1.Debian系列(Debian / Ubuntu / Kali):apt update -yapt install wget -y2.Alpine Linux:apk updateapk add bash wgetsed -i 's/root:\/bin\/ash/root:\/bin\/bash/g' /etc/passwd3.其它依赖项和操作系统看:github项目 二.下载系统wget --no-check-certificate -qO InstallNET.sh 'https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh中国大陆服务器:wget --no-check-certificate -qO InstallNET.sh 'https://gitee.com/mb9e8j2/Tools/raw/master/Linux_reinstall/InstallNET.sh' && chmod a+x InstallNET.sh三.开始安装相应 Linux 系统 【默认用户名,对于 Linux:root,对于 Windows:管理员,默认密码,对于Linux: LeitboGi0ro ,对于Windows: Teddysun.com,默认端口,Linux 系统:与之前通过终端连接的系统相同。Windows 系统:3389 】1.Debian系统bash InstallNET.sh -debian2.Ubuntu 22.04bash InstallNET.sh -ubuntu3.Alpine Linux Edgebash InstallNET.sh -alpine4.CentOS 9 streambash InstallNET.sh -centos5.Windows 11 Pro for Workstationsbash InstallNET.sh -windows四.常用系统一键脚本一键 debian 11或12【安装debian 12系统,修改为debian 12,设置亚洲上海时区,密码为admin888,名称是admin888,bbr,建议安装前修改密码】bash <(curl -sSL https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh) -debian 11 -timezone "Asia/Shanghai" -pwd 'admin888' -hostname "admin888" -swap "1024" --bbr五.其它说明对于 Debian,官方推荐的镜像列表在这里:https://www.debian.org/mirror/list.html高级用法,例如 Debian 11(推荐用于中国大陆以外的服务器)以更换为美国镜像的一键安装代码为例bash <(curl -sSL https://raw.githubusercontent.com/leitbogioro/Tools/master/Linux_reinstall/InstallNET.sh) -debian 11 -mirror "https://mirrors.ocf.berkeley.edu/debian/" -timezone "Asia/Shanghai" -pwd 'admin888' -hostname "admin888" -swap "1024" --bbr下面是各国镜像地址日本:bash InstallNET.sh -debian 12 -mirror "http://ftp.riken.jp/Linux/debian/debian/"香港:bash InstallNET.sh -debian 12 -mirror "http://ftp.hk.debian.org/debian/"新加坡:bash InstallNET.sh -debian 12 -mirror "http://ftp.sg.debian.org/debian/"韩国:bash InstallNET.sh -debian 12 -mirror "http://ftp.kaist.ac.kr/debian/"台湾:bash InstallNET.sh -debian 12 -mirror "http://ftp.tw.debian.org/debian/"美国:bash InstallNET.sh -debian 12 -mirror "https://mirrors.ocf.berkeley.edu/debian/"加拿大:bash InstallNET.sh -debian 12 -mirror "http://ftp.ca.debian.org/debian/"英国:bash InstallNET.sh -debian 12 -mirror "http://ftp.uk.debian.org/debian/"德国:bash InstallNET.sh -debian 12 -mirror "http://ftp.de.debian.org/debian/"
2025年06月29日
4 阅读
0 评论
0 点赞
2024-04-29
RN服务器添加 IPV6 地址
RN服务器添加 IPV6 地址 请注意,对于 Ubuntu 和 Debian 实例,需要在配置后手动启用 IPV6。请按照以下步骤为您的服务器启用 IPv6 地址。通过 ssh 连接登录到您的服务器并在 sysctl.conf 文件中添加以下条目:nano /etc/sysctl.conf一直向下滚动,并在末尾添加以下行:net.ipv6.conf.all.autoconf = 0 net.ipv6.conf.all.accept_ra = 0 net.ipv6.conf.eth0.autoconf = 0 net.ipv6.conf.eth0.accept_ra = 0替换前备份net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 要检查运行:sysctl -p然后尝试重启网络systemctl restart networking然后检查ping6 google.com如果仍然无法正常工作,请尝试重新启动您的 VPS。注意:最后,还要确保 /etc/sysctl.conf 文件中没有任何可能禁用 IPv6 连接的值。如果是这样,请务必将其注释掉,然后使用“sysctl -p”或重新启动 VPS 来刷新您的设置。
2024年04月29日
2 阅读
0 评论
0 点赞