Mac下使用Docker安装CREMEB-PRO宝塔环境
在这里,我们将在在Mac下本地使用Docker安装CREMEB-PRO宝塔环境,以完成本地环境搭建,便于二次开发。
1. 初始安装宝塔
1.1. 下载centos7镜像
比如笔者的阿里云服务器(测试环境)使用的系统为:CentOS 7.9.2009 x86_64(Py3.7.9),那么我们下载centos7即可。
docker pull centos:7
1.2. 创建宝塔数据卷
我们需要创建一个名为 baota 的 Docker 数据卷(volume)。
docker volume create baota
1.3. 创建并启动容器
docker run -tid --name baota -p 80:80 -p 443:443 -p 20:20 -p 21:21 -p 8888:8888 -p 888:888 -p 8022:8022 -p 8282:8282 -p 3306:3306 -p 6379:6379 --privileged=true --restart always --shm-size=4g -v baota:/www -v ~/code/company:/www/wwwroot centos:7
1.4. 进入容器安装宝塔
D-Bus错误可以忽略
1、进入该实例终端shell
docker exec -it baota /bin/bash
2、进入root的home目录
cd
3、下载宝塔安装脚本(开心版,无需绑定手机号)
curl -sSO http://v9.btkaixin.net/install/install_6.0.sh
4、执行安装
sh install_6.0.sh
安装出现DBUS的错误,这个不影响我们使用宝塔,可以不用管
5、修改bt登录默认端口为8888
容器中输入bt 回车 -> 8 回车 -> 8888 回车
1.5. 访问本地宝塔
- 链接:http://127.0.0.1:8888/6696100e
- 账号:h4iapf1l
- 密码:e8bbd642
1.6. 安装参考
- 宝塔开心版_宝塔Linux面板开心版_宝塔云控/宝塔云安全监控开心版_宝塔破解版
- 在 Mac 上使用 Docker 安装宝塔并部署 LNMP 环境_mac 安装宝塔-CSDN博客
- mac用docker创建宝塔来部署站点详细教程_mac 宝塔-CSDN博客
2. 宝塔安装CrmebPro
2.1. 软件安装
CRMEB pro v3.12.软件安装 - CRMEB文档
这里我们分别通过宝塔的软件商店安装:
- Nginx最新版
- MySQL8.0
- PHP8.0
- Redis最新版
Supervisor管理器暂时无法使用,因为Docker的容器机制。但是不影响我们使用,我们可以直接在通过进去Docker容器内执行php think swoole执行项目即可。
2.2. 网站HTTPS问题
由于我们使用的是本机开发环境,域名 www.crmebtest.com
没有在公共 DNS 服务器上注册,因此无法通过 DNS 查询解析,这就是导致验证失败的原因。
为了解决这个问题,我们可以采取以下方法:
2.2.1. 通过本地 DNS 解析解决
你已经将 127.0.0.1 www.crmebtest.com
添加到了 /etc/hosts
文件中,这样本机应该能解析该域名,但外部服务器无法解析此域名。因此,域名验证过程无法通过。接下来我们需要使用本地开发环境的自签名证书。
2.2.2. 使用本地开发环境的自签名证书
我们目的是在本地开发中测试 SSL 证书,而不是让外部 DNS 解析这个域名,可以选择为该域名创建自签名证书,并在本机的浏览器或容器中信任该证书。这样就可以绕过外部 DNS 解析的限制,进行本地的 HTTPS 访问。
2.2.2.1. 创建自签名证书的步骤
2.2.2.1.1. 生成自签名证书
使用 OpenSSL 生成自签名证书:
openssl req -x509 -newkey rsa:4096 -keyout www.crmebtest.com.key -out www.crmebtest.com.crt -days 365 -nodes
在生成证书时,OpenSSL 会要求你输入一些信息来完成证书的创建。输入完这些信息后,证书文件和密钥文件会被生成,分别是 www.crmebtest.com.crt
和 www.crmebtest.com.key
2.2.2.1.2. 将证书和密钥添加到宝塔
在宝塔面板中,为 www.crmebtest.com
配置 SSL。
右键查看www.crmebtest.com.crt
和 www.crmebtest.com.key
文件内容,分别填入证书(PEM格式)和密钥(KEY)并保存。
2.2.2.1.3. 信任证书
在我们的开发机器和容器中,需要将自签名证书添加到受信任的证书列表中,这将 .crt
文件添加到钥匙串中,设置为始终信任。
在 macOS 中,将 .crt
文件添加到钥匙串后,你可以设置该证书为“始终信任”以确保它被系统或应用程序始终信任。请按照以下步骤操作:
2.2.3. 打开钥匙串访问
- 在 Mac 上,点击顶部的 放大镜图标,然后输入 "钥匙串访问",点击打开。
- 你也可以在 应用程序 > 实用工具 中找到 钥匙串访问。
2.2.3.1. .crt
文件
如果你还没有将 .crt
文件添加到钥匙串中,可以按照以下步骤导入:
- 在钥匙串访问中,点击 文件 > 导入项,然后选择你的
.crt
文件进行导入。
2.2.3.2. 查找证书
- 在钥匙串访问窗口的左侧,选择 "系统" 或 "登录" 钥匙串,具体取决于你将证书添加到哪个钥匙串。
- 在右侧的搜索框中,输入你的证书名称或者
.crt
文件的名称来查找它。
2.2.3.3. 设置为始终信任
- 找到并双击你的证书,这会打开证书的详细信息窗口。
- 在证书的窗口中,点击 信任 部分,展开它。
- 在 "使用此证书时" 的选项中,选择 "始终信任"。
- 关闭证书窗口后,系统会要求你输入管理员密码来确认更改