当前位置: 首页 > article >正文

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.crtwww.crmebtest.com.key

2.2.2.1.2. 将证书和密钥添加到宝塔

在宝塔面板中,为 www.crmebtest.com 配置 SSL。

右键查看www.crmebtest.com.crtwww.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. 设置为始终信任
  • 找到并双击你的证书,这会打开证书的详细信息窗口。
  • 在证书的窗口中,点击 信任 部分,展开它。
  • "使用此证书时" 的选项中,选择 "始终信任"
  • 关闭证书窗口后,系统会要求你输入管理员密码来确认更改


http://www.kler.cn/a/536159.html

相关文章:

  • OpenAI 实战进阶教程 - 第四节: 结合 Web 服务:构建 Flask API 网关
  • 概念AIGC
  • 【吾爱出品】开源桌面组件:widgets
  • 【漫画机器学习】082.岭回归(或脊回归)中的α值(alpha in ridge regression)
  • PostgreSQL / PostGIS:创建地理要素
  • GB/T 44721-2024 与 L3 自动驾驶:自动驾驶新时代的基石与指引
  • 【Leetcode 每日一题】59. 螺旋矩阵 II
  • 广度优先搜索(BFS)算法详解——以走迷宫问题为例
  • 【JS】element-ui table展示勾选状态
  • AI工具——Cherry Studio,搭建满血DeepSeek R1的AI对话客户端
  • 【医院绩效管理专题】2.绩效管理:医院发展的核心驱动力
  • Jmeter接口自动化测试
  • ZIP完美解密解压缩和暴力破解最佳实现
  • python图片转字符画应用
  • Java 集合中的 `removeIf` 和 Stream API 的 `filter`
  • 4.Python字符串和列表:字符串输入、字符串输出、下标和切片、字符串常见函数、列表(list)、列表的循环遍历、列表的增删改查、列表的嵌套、列表的切片
  • 基于单片机的电子抢答器设计(论文+源码+实物)
  • Vue 3 30天精进之旅:Day 17 - 样式和动画
  • UE学习日志#24 C++笔记#10 内存管理1
  • linux——网络计算机{序列化及反序列化(JSON)(ifdef的用法)}
  • DeepSeek本地化部署
  • 【实战】excel分页写入导出大文件
  • 如何在Android Studio中开发一个简单的Android应用?
  • 【截图】selenium自动通过浏览器截取指定元素div的图片
  • 深度剖析 Redis:缓存穿透、击穿与雪崩问题及实战解决方案
  • java将list转成树结构