- 一台all in one的nas主机,可以是pve、esxi、kvm等
- 公网ip(电信可联系运营商开放公网ip)
- 域名(需要配置cname记录"*"解析到本域名)
- 配置ip(10.10.10.254/24),网关(10.10.10.252),dns(10.10.10.252)
- 安装omv、ikuai、openwrt虚拟机
- 配置ip(10.10.10.253)
- 配置dns(114.114.114.114,8.8.8.8)
- 配置dhcp,客户端(10.10.10.0/24),网关(10.10.10.252),dns(10.10.10.252,10.10.10.253)
- 配置拨号
- 配置ddns
- 配置端口映射,把需要暴露的接口映射到外网
- 配置ip(10.10.10.252/24),网关(10.10.10.253),dns(114.114.114.114,8.8.8.8),忽略dhcp
- 配置frpc
- 配置passwall2
- 配置vpn
- 配置ip(10.10.10.1/24),网关(10.10.10.252),dns(10.10.10.252)
- 配置用户
- 配置文件系统
- 配置各类文件系统服务(smb、nfs、 ...)
- 使用本项目一键搭建nextcloud等环境
先按照文档安装Docker、Python3等环境,然后按照以下命令部署Docker容器
# 添加容器
# omv中包含了(nextcloud、flare、qbittorrent),其他的像vscode、gitlab按需添加
ct-cntr add omv gitlab portainer vscode
# 配置主域名和acme,用于自动生成ssl证书
# ACME_DNS_API参数为dnsapi类型,比如用的阿里云的dns就填dns_ali,顺带配上Ali_Key和Ali_Secret参数
# 具体可参考:https://github.com/acmesh-official/acme.sh/wiki/dnsapi
ct-cntr config set \
ROOT_DOMAIN=test.com \
ACME_DNS_API=dns_ali \
Ali_Key=xxx \
Ali_Secret=yyy
# 启动容器
ct-cntr up
避免开机时未挂载硬盘的时候就加载容器,导致容器加载失败,通过以下命令编辑延迟启动docker:
SYSTEMD_EDITOR="vim" systemctl edit docker.service
添加以下配置实现延迟启动:
[Unit]
ExecStartPre=/bin/sleep 60