Mac安装docker desktop

一、背景

最近在学习Spring AI,于是在GitHub上找了个开源项目,个人觉得还是比较适合有Java基础和AI基础的同学学习的。GitHub地址如下:

https://github.com/qifan777/dive-into-spring-ai

但是看了下运行环境需要

  • MySQL 8

  • Redis-Stack

  • neo4j 5+

不想直接安装在Mac电脑上,就想到在docker中安装,下面就介绍如何安装docker desktop同时安装上面的中间件。

二、本机环境

Mac Book Pro Apple M1 16GB 512GB,建议存储空间预留 40GB 以上。

三、docker desktop下载

进入官网Docker Desktop: The #1 Containerization Tool for Developers | Docker

选择对应的版本进行下载

这里选择第一个进行下载,下载后 双击打开文件 ------》将docker desktop图标拖入applications文件夹中------》等待文件拷贝完成。

四、配置docker desktop

  1. 启动后,状态栏会出现docker的🐳图标

  2. 首次运行会提示接受docker 订阅服务协议,点击同意

  3. 登录或创建docker hub账户,可选。

  4. 检查默认配置

  • 推荐设置:自动配置CPU及内存等(我选的这个)
  • 高级设置:手动分配资源

五、验证安装

打开终端,输入以下命令验证docker是否安装成功

bash 复制代码
docker --version
docker compose version
docker run hello-world

预期输出

  • docker --version 显示版本:Docker version 28.1.1 (结合自己下载的版本号)
  • docker compose version 显示版本:Docker Compose version v2.35.1-desktop.1
  • docker run hell-world 拉取镜像并运行:Hello from Docker!

六、中间件安装

直接在docker hub中搜索,然后进行下载

启动MySQL容器

bash 复制代码
docker run -p 3306:3306 \
 --name mysql \
 -v mysql_data:/var/lib/mysql \
 -v mysql_conf:/etc/mysql/conf.d \
 -e MYSQL_ROOT_PASSWORD=123456 \
 -d mysql/mysql-server:latest

启动Redis stack

bash 复制代码
docker run -d \
--name redis-stack \
--restart=always \
-v redis-data:/data \
-p 6379:6379 \
-p 8001:8001 \
-e REDIS_ARGS="--requirepass 123456" redis/redis-stack:latest

启动neo4j

bash 复制代码
docker run \
  -d \
  -p 7474:7474 -p 7687:7687 \
  -v neo4j-data:/data -v neo4j-data:/plugins \
  --name neo4j \
  -e NEO4J_apoc_export_file_enabled=true \
  -e NEO4J_apoc_import_file_enabled=true \
  -e NEO4J_apoc_import_file_use__neo4j__config=true \
  -e NEO4JLABS_PLUGINS=\[\"apoc\"\] \
  -e NEO4J_dbms_security_procedures_unrestricted=apoc.\\\* \
  neo4j

其他应用部署可参考

mac用docker部署应用 · 语雀

相关推荐
唯情于酒2 小时前
Docker学习
学习·docker·容器
喵叔哟2 小时前
20.部署与运维
运维·docker·容器·.net
德育处主任5 小时前
『NAS』在群晖部署一个文件加密工具-hat.sh
前端·算法·docker
运维栈记7 小时前
虚拟化网络的根基-网络命名空间
网络·docker·容器
Hellc0078 小时前
Docker网络冲突排查与解决方案:完整指南
网络·docker·容器
hanyi_qwe9 小时前
发布策略 【K8S (三)】
docker·容器·kubernetes
眠りたいです9 小时前
Docker核心技术和实现原理第二部分:docker镜像与网络原理
运维·网络·docker·容器
德育处主任9 小时前
『NAS』在群晖部署图片压缩工具-Squoosh
前端·javascript·docker
栗子叶9 小时前
IP协议 地址划分&MAC地址作用&ip addr命令
网络·tcp/ip·macos