背景
在MAC M1中搭建商城项目环境时,采用docker统一管理开发工具,期间碰到了许多环境安装问题,做个总结。
0、准备工作
更新mac os到14.0以上(当前macOS Sonoma 14.5)
更新docker.app应用到最新版(当前4.30.0)
配置国内镜像源
在docker-engine设置中修改参数,增加国内源链接即可:
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"
]
参考:配置国内镜像源
1、安装redis
- 在宿主机新建redis.conf文件
- 运行创建容器命令,进行容器创建、端口映射、文件挂载、以指定配置文件启动:
docker run -d \
--name my-redis \
-v /Users/chenzhouyuan/Public/work/environment/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf \
-v /Users/chenzhouyuan/Public/work/environment/docker/redis/data:/data \
-p 6379:6379 \
redis redis-server /usr/local/etc/redis/redis.conf
未解决的问题:运行命令后,redis-server未正常启动,需要在docker容器中手动输入命令“redis redis-server /usr/local/etc/redis/redis.conf”,检查后发现网络、配置文件、文件权限均无问题,暂不知原因。(可能是mac M1平台的bug?)
2、安装xxl-job
错误描述:
docker容器中xxl-job无法连接宿主机的mysql。原因是访问宿主机mysql,需要使用局域网,且mysql需要赋予此ip访问权限‘
错误提示:
解决方式:
需要在mysql中执行sql命令,添加指定ip地址账号的访问权限,输入:
CREATE USER