[Unraid 系列 v6.9.2] 10 可道云
运行容器
Unraid 内容器目录
复制/mnt/user/appdata/kodcloud/kodbox
├── Dockerfile
├── README.md
├── compose
│ ├── db
│ ├── docker-compose.yml
│ ├── mysql-init-files
│ ├── mysql_db.txt
│ ├── mysql_password.txt
│ ├── mysql_user.txt
│ ├── site
│ └── ssl
├── conf
│ ├── nginx-site.conf
│ ├── nginx.conf
│ ├── private-ssl.conf
│ ├── setting_user.example
│ └── supervisord.conf
└── entrypoint.sh
6 directories, 12 files
启用 SSL
阿里云下载 Nginx 版证书。
复制目录: xxx.xxx.site_nginx
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2022/3/19 20:06 1024 xxx.xxx.site.csr
-a---- 2022/3/19 20:06 1674 xxx.xxx.site.key
-a---- 2022/3/19 20:06 4093 xxx.xxx.site_bundle.crt
-a---- 2022/3/19 20:06 4093 xxx.xxx.site_bundle.pem
将 xxx.xxx.site.csr
更名为 fullchain.pem
。
将 xxx.xxx.site.key
更名为 privkey.pem
。
保存于 kodbox/compose/ssl
文件夹中。
docker-compose.yml
其中 [PATH]
为 git 克隆项目中 kodbox/compose
目录绝对路径。
复制version: "3.5"
services:
db:
image: mariadb
container_name: kodcloud-db
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- "[PATH]/db:/var/lib/mysql"
- "[PATH]/mysql-init-files:/docker-entrypoint-initdb.d"
environment:
- "TZ=Asia/Shanghai"
- "MYSQL_ROOT_PASSWORD=Kodcloud35852627" #root password required
- "MYSQL_DATABASE_FILE=/run/secrets/mysql_db"
- "MYSQL_USER_FILE=/run/secrets/mysql_user"
- "MYSQL_PASSWORD_FILE=/run/secrets/mysql_password"
restart: always
secrets:
- mysql_db
- mysql_password
- mysql_user
app:
image: kodcloud/kodbox:v1.28
container_name: kodcloud-app
ports:
- 10084:80
- 10085:443
links:
- db
- redis
volumes:
- "[PATH]/site:/var/www/html"
- "[PATH]/ssl:/etc/nginx/ssl"
environment:
- "MYSQL_SERVER=db"
- "MYSQL_DATABASE_FILE=/run/secrets/mysql_db"
- "MYSQL_USER_FILE=/run/secrets/mysql_user"
- "MYSQL_PASSWORD_FILE=/run/secrets/mysql_password"
- "CACHE_HOST=redis"
restart: always
secrets:
- mysql_db
- mysql_password
- mysql_user
redis:
image: redis:alpine
container_name: kodcloud-redis
environment:
- "TZ=Asia/Shanghai"
restart: always
secrets:
mysql_db:
file: "[PATH]/mysql_db.txt"
mysql_password:
file: "[PATH]/mysql_password.txt"
mysql_user:
file: "[PATH]/mysql_user.txt"
加入 IPv6
前提是主机支持 IPv6 。
通过 Portainer
将 app
容器加入 bridge
。
最好不要添加在
docker-compose.yml
中每个容器都添加:复制network_mode: "bridge"
否则,在 “系统账户设置” 步骤中报错:
复制出错了! (warning!) ----------------------------------- DbMysqli->connect(); php_network_getaddresses: getaddrinfo failed: Name does not resolve 连接错误,请检查服务器地址是否正确。
作者:Yogile
出处:https://www.cnblogs.com/Yogile/p/16367502.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构