OrbStack搭建Mysql服务
什么是OrbStack
OrbStack 是一个可以在 macOS 上快速运行 Docker 容器,和 Linux 虚拟机的工具,资源占用率低,高带宽,速度快。
OrbStack解决了官方Docker的缺陷
- 启动速度快
- 网络快
- Rosetta x86 模拟
- 更低的CPU占用,更低的内存占用
- 更低的电量消耗
- 功能更简洁,更加轻量化
使用OrbStack安装Mysql
此处建议使用docker-compose
去快速编排、构建具有多个docker容器的项目,而不是通过docker run
的方式去完成单独的Docker容器构建。(公司里的运维老哥跟我说,小白才会用run去玩docker容器🙄,建议我直接上手docker-compose,通过配置文件和配置命令的方式去管理具有多个Docker容器的项目)
Docker Compose 简介
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YAML 文件
(后缀名.yml
)来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务(默认使用的配置文件名称为docker-compose.yml
)。OrbStack内部自动集成docker-compose,因此无需重复安装,开箱使用
Docker Compose 核心概念
Docker Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)
Docker Compose 使用的三个步骤:
- 使用 Dockerfile 定义应用程序的环境。
- 使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。
- 执行 docker-compose up 命令来启动并运行整个应用程序。
docker.compose.yml 文件编写-以此次搭建Mysql为例
docker-compose.yml
version: "3.3" services: db: image: mysql:5.7 restart: always platform: linux/amd64 container_name: dataDB environment: MYSQL_DATABASE: "niumu" # So you don't have to use root, but you can if you like MYSQL_USER: "user" # You can use whatever password you like MYSQL_PASSWORD: "123654" # Password for root access MYSQL_ROOT_PASSWORD: "123654" ports: # <Port exposed> : <MySQL Port running inside container> - "3306:3306" volumes: - ./db-data:/var/lib/mysql
参数解释
- version:
version
是必须指定
的,而且总是位于文件的第一行
。它定义了Compose 文件格式
(主要是 API)的版本,而不是Docker引擎 或是 Docker Compose的版本 - services:用于定义不同的应用服务。这里services下的
db
表示服务名称(此处可以取任意名称),服务都是被Docker Compose部署在各自容器当中 - image:指定
镜像tag
或者镜像ID
。image是必须指定
的,或者可以选择与build存在其一(version1版本不支持同时存在
)。 - restart:重启策略,默认no,可选:always,no-failure,unless-stopped
- platform:支持的运行平台。
- container_name:容器名称
- environment:添加环境变量。这里是为数据库指定数据库名称,用户名称,密码,root密码
- ports:用于暴露端口。
[在宿主环境/主机暴露的端口]:[容器内部暴露的端口]
,此外与之类似的还有一个expose
,不过expose暴露的端口只提供给容器
使用,而不会暴露给主机/宿主环境 - volumes:挂载数据卷。上述表示将主机的./db-data挂载到容器的/var/lib/mysql上,访问/var/lib/mysql就相当于访问主机的./db-data,数据写入也会同步到主机上。
启动Docker Compose
在指定的目录下创建好docker-compose.yml
后,cd到当前目录,通过docker compose up -d
启动
启动后示意图
终端
OrbStack
dataflare
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了