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是否安裝成功

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容器

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

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

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部署應用 · 語雀

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/83729.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/83729.shtml
英文地址,請注明出處:http://en.pswp.cn/web/83729.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【算法深練】二分答案:從「猜答案」到「精準求解」的解題思路

目錄 前言 二分求最小值 1283. 使結果不超過閾值的最小除數 2187. 完成旅途的最少時間 1011. 在 D 天內送達包裹的能力 875. 愛吃香蕉的珂珂 3296. 移山所需的最少秒數 475. 供暖器 2594. 修車的最少時間 1482. 制作 m 束花所需的最少天數 3048. 標記所有下標的最早秒…

基于RK3588,飛凌教育品牌推出嵌入式人工智能實驗箱EDU-AIoT ELF 2

在AIoT技術驅動產業變革的浪潮中,嵌入式人工智能已成為工業物聯網、智慧交通、智慧醫療等領域創新突破的關鍵引擎。飛凌嵌入式教育品牌ElfBoard立足產業前沿,重磅推出嵌入式人工智能實驗箱EDU-AIoT ELF 2,以“軟硬協同、產教融合”為設計理念…

51單片機-IO擴展模塊 pcf8575

PCF8575介紹 PCF8575 是 NXP(原飛利浦半導體)生產的一款通用 IC 總線 I/O 擴展器芯片,主要用于微控制器(如 Arduino、STM32 等)的 I/O 端口擴展。 主要特性 16位并行 I/O 端口:可以配置為輸入或輸出 IC 總…

Python3 學習(菜鳥)-02基本數據類型

1.多變量賦值 多變量被賦予相同的數值 多變量被賦予不同的數值 2.數值運算 除法 /:返回一個浮點數 除法 //:返回一個整數 3.列表 加號和星號 加號 是列表連接運算符 星號 * 是重復操作 list [ abcd, 786 , 2.23, runoob, 70.2 ] # 定義一個…

『uniapp』搜索功能+商品列表滾動效果(詳細圖文注釋)

目錄 預覽效果準備工作代碼分析與思路1. 頁面結構主容器:`menber-container`搜索框:`u-search-inner`菜單:`u-menu-wrap`2. 數據模型`data()` 中的數據定義:3. 生命周期`onLoad(options)``onReady()``mounted()`4. 方法`search()``searchClear()``swichMenu(index)``getElRe…

微服務--消息隊列mq

1. mq簡介 消息隊列是分布式系統中的異步通信中間件,采用"生產者-消費者"模型實現服務間解耦通信 核心作用 服務解耦異步處理流量削峰數據同步最終一致性 消息隊列模式 發布/訂閱模式:一對多廣播工作隊列模式:競爭消費死信隊列…

第26節 Node.js 事件

Node里很多對象會分發事件: 每次有連接的時候net.Server會分發事件,當文件打開的時候fs.readStream會分發事件。所有能分發事件的對象都是 events.EventEmitter的實例。通過require("events");能訪問這個模塊。 一般來說,事件名都…

LangChain + MCP + vLLM + Qwen3-32B 構建本地私有化智能體應用

一、私有化智能體應用 在本專欄的前面文章基于Spring AI MCP實現了本地 ChatBI 問答應用,本文還是依據該場景,采用 LangChain vLLM Qwen3-32B MCP 技術棧構建該流程,整體過程如下圖所示: 實現效果如下所示: 關于 M…

AKS升級路線最佳實踐方案

前言 Kubernetes 社區大約每 4 個月發布次要版本,次要版本包括新增功能和改進。補丁發布更為頻繁(有時每周都會發布),適用于次要版本中的關鍵 Bug 修復。修補程序版本包括針對安全漏洞或主要 bug 的修復。對于受支持版本列表以…

樹莓派智能小車基本移動實驗指導書

1.安裝LOBOROBOT庫函數 LOBOROBOT.py代碼如下: #!/usr/bin/python # -*- coding: utf-8 -*-import time import math import smbus import RPi.GPIO as GPIODir [forward,backward, ]class PCA9685:# Registers/etc.__SUBADR1 0x02__SUBADR2 …

如何對目標檢測算法RT-DETR進行創新和改進:突破瓶頸,提升性能!

更多精彩,詳見文末~~~ 在目標檢測的高速發展中,RT-DETR作為DETR(DEtection TRansformer)的高效變體,憑借其優異的性能和較快的推理速度,已經成為許多實際應用中的首選算法。然而,盡管RT-DETR在…

Java-String

前言 package com.kjxy.st;public class TestString1 {public static void main(String[] args) {String s1 "hello";String s2 "hello";String s3 new String("hello");String s4 new String("hello");System.out.println(s1 s2…

計算機組成原理——C/存儲系統

🌈個人主頁:慢了半拍 🔥 創作專欄:《史上最強算法分析》 | 《無味生》 |《史上最強C語言講解》 | 《史上最強C練習解析》|《史上最強C講解》|《史上最強計組》|《史上最強數據結構》 🏆我的格言:一切只是時…

什么是電輸運性能

電輸運性能?是指材料在電場作用下,電子在材料中傳輸的能力和效率。具體來說,電輸運性能包括以下幾個方面: ?電子的自由移動性?:導體中的電子具有較大的自由移動能力,這是由于導體中的原子或分子結構具有一定的松散…

k3s入門教程(二)部署前后端分離程序

文章目錄 部署基礎服務部署Redis部署MySQL端口轉發測試 運行與構建前后端鏡像構建后端鏡像 docker build -t ruoyi-admin:v3.8 .構建前端鏡像 docker build -t ruoyi-ui:v3.8 .創建私庫,推拉鏡像 前后端應用部署后端應用部署前端應用部署 啟動順序與初始化容器修改前…

Seata如何與Spring Cloud整合?

🔧 一、整合核心步驟 1. 啟動 Seata Server(TC) 環境準備: 修改 registry.conf,指定注冊中心(如 Nacos)和配置中心:registry {type "nacos"nacos {serverAddr "l…

Python惰性函數與技術總結-由Deepseek產生

在Python中,惰性(Lazy)技術指延遲計算直到真正需要結果時才執行,常用于優化內存和性能。以下是常見的惰性函數和技術: 1. 生成器(Generators) 原理:使用 yield 返回迭代結果&#x…

輪廓 裂縫修復 輪廓修復 填補孔洞 源代碼

目錄 1. 形態學閉合操作填補小孔洞 完整代碼: 使用 Douglas-Peucker 算法對輪廓進行多邊形逼近 2.裂縫修復 輪廓修復 輪廓補全 函數封裝 調用示例: 1. 形態學閉合操作填補小孔洞 完整代碼: import cv2 import numpy as np# 創建模擬圖像(白色區域 + 多個不規則黑洞)…

HTTP1.1

HTTP基礎知識 HTTP(HyperText Transfer Protocol)是用于傳輸超文本 的應用層協議,采用客戶端-服務器 模型。 客戶端(如瀏覽器)發起請求,服務器響應并返回數據。 工作原理 客戶端發送HTTP請求至服…

【Linux教程】Linux 生存指南:掌握常用命令,避開致命誤操作

Linux 常用操作命令:避免誤操作指南 在 Linux 系統中,熟練掌握常用操作命令是高效工作的基礎,但同時也要警惕誤操作帶來的風險。無論是部署程序、配置防火墻、管理端口還是處理進程,一個小小的失誤都可能導致系統故障、數據丟失等…