使用Docker部署MySQL和SQLServer
使用Docker部署MySQL和SQLServer
CAMELLIA使用Docker部署MySQL和SQLServer
- 部署MySQL
- 部署SQLServer
1. 部署MySQL
操作步骤如下:
- 拉取MySQL镜像:
docker pull mysql
- 创建并启动一个容器:
docker run
1.1 拉取镜像
1 | docker pull mysql |
*1.2 创建并启动容器
1.2.1 要求:
- 为保证容器关闭时不会丢失数据
- 目录挂载
- 数据卷挂载
- 保证服务器重启后容器可以自动恢复运行
1.2.2 创建并启动容器
1 | docker run --name local-mysql8 \ |
--name local-mysql8
:给容器起一个名字-e MYSQL_ROOT_PASSWORD=123456
:参数配置,设置数据库密码。-p 3306:3306
:端口映射,将容器3306端口映射到宿主机3306端口。(宿主机:容器
)-v mysql-data:/var/lib/mysql
:创建数据卷,并挂载容器中MySQL数据路径。(可DockerHub获取路径)--restart always
:设置容器的重启策略为“始终重启”,确保容器自动重启。-d mysql:latest
:指定镜像。
[!TIP]
这些指令需要在容器创建的时候就指定,容器创建后无法重新设置,只能再创建一个容器。
1.3 使用Navicat连接MySQL
和正常连接一样,主机就是服务器的ip地址,端口在这里是宿主机端口(不是容器端口)。
2. 部署SQLServer
操作步骤如下:
- 拉取MySQL镜像:
docker pull mcr.microsoft.com/mssql/server
- 创建并启动一个容器:
docker run
2.1 拉取镜像
1 | docker pull mcr.microsoft.com/mssql/server |
*2.2 创建并启动容器
1 | docker run \ |
-e "ACCEPT_EULA=Y"
: 设置环境变量ACCEPT_EULA
的值为Y
,表示接受 SQL Server 的许可协议(EULA)。-e "SA_PASSWORD=haha22."
: 设置环境变量SA_PASSWORD
的值为haha22.
,定义 SQL Server 的SA
用户(系统管理员)的密码。-p 1433:1433
: 将宿主机的 1433 端口映射到容器的 1433 端口。容器内的 SQL Server 服务将监听 1433 端口,而宿主机上的应用可以通过宿主机的 1433 端口连接到 SQL Server。-v sqlserver-data:/var/opt/mssql
: 将名为sqlserver-data
的 Docker 数据卷挂载到容器内的/var/opt/mssql
目录。SQL Server 的数据文件将存储在该数据卷中,从而保证数据的持久性。--name sqlserver2022
: 为容器指定一个名称sqlserver2022
。--restart always
: 设置容器的重启策略为“总是重启”,确保容器在 Docker 服务重启或系统重启后自动启动。-d
: 让容器在后台运行(detached mode),即不占用当前终端。mcr.microsoft.com/mssql/server:latest
: 使用 Microsoft Container Registry 提供的 SQL Server 最新版本镜像启动容器。
查看日志看是否启动。