在安装 Docker 镜像时,由于官方镜像下载速度较慢,我们可以使用阿里云的镜像加速器来提升下载速度。
使用阿里云镜像加速器
首先,找到并配置阿里云的镜像加速器。安装教程如下:
- 登录阿里云,进入容器镜像服务。直达链接
- 获取镜像加速器地址,并按照说明进行配置。
- 配置完成后,重新启动 Docker 服务,使镜像加速器生效。
上截图
根据自己的发行版本选择合适的配置
Docker 支持配置多个镜像加速器,当一个加速器不可用时,它会自动尝试下一个。你可以在 /etc/docker/daemon.json
文件中配置多个镜像加速器。下面是一个示例配置,其中包含多个国内的 Docker 镜像加速器:
配置多个镜像加速器
1. 创建或编辑 /etc/docker/daemon.json
文件:
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://mirror.ccs.tencentyun.com","https://docker.mirrors.ustc.edu.cn","https://<your-mirror-id>.mirror.aliyuncs.com"]
}
EOF
一行一行执行
如果你希望在一个命令中完成,也可以用 &&
连接命令:
sudo mkdir -p /etc/docker && sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://<your-mirror-id>.mirror.aliyuncs.com"]
}
EOF
请将 <your-mirror-id>
替换为你在阿里云获得的镜像加速器 ID。
验证文件是否创建
查看文件内容,确保文件已正确创建:
cat /etc/docker/daemon.json
重新启动 Docker 服务
2.在配置完成后,重新启动 Docker 服务使配置生效:
sudo systemctl daemon-reload
sudo systemctl restart docker
拉取 MySQL 镜像
现在可以尝试使用国内镜像源拉取 MySQL 镜像:
docker pull mysql:latest
运行 MySQL 容器并持久化数据存储到服务器
要将 MySQL 的数据持久化存储到服务器的 data
文件夹中,你可以通过 Docker 的数据卷功能来实现。数据卷可以使得容器中的数据在容器被删除或重新创建时保持不变,从而实现持久化存储。
步骤概述
-
创建数据卷: 在服务器的
data
文件夹中创建一个用于存储 MySQL 数据的目录。 -
挂载数据卷: 使用 Docker 命令时,将这个目录挂载到 MySQL 容器中的相应位置,使得 MySQL 数据库文件能够持久化存储在服务器上。
具体操作步骤
假设你已经在服务器上的 /data
目录下创建了一个名为 mysql_data
的子目录,用于存放 MySQL 的数据文件。
1. 创建数据卷目录
在服务器上执行以下命令,创建用于持久化存储 MySQL 数据的目录:
sudo mkdir -p /data/mysql_data
2. 运行 MySQL 容器,并挂载数据卷
使用以下命令启动 MySQL 容器,并将 /data/mysql_data
目录挂载为 MySQL 容器内的数据卷:
docker run -d --name mysql-container \-v /data/mysql_data:/var/lib/mysql \-e MYSQL_ROOT_PASSWORD=my-secret-pw \-p 3306:3306 \mysql:latest
解释:
-d
: 让容器在后台运行。--name mysql-container
: 指定容器的名称为mysql-container
。-v /data/mysql_data:/var/lib/mysql
: 将服务器上的/data/mysql_data
目录挂载到容器内的/var/lib/mysql
目录。这样做后,MySQL 将在容器内将数据写入到/var/lib/mysql
目录,而这些数据实际上存储在服务器的/data/mysql_data
目录中,实现了数据持久化存储。-e MYSQL_ROOT_PASSWORD=my-secret-pw
: 设置 MySQL 的 root 用户密码为my-secret-pw
。请根据实际情况修改为你想要的密码。-p 3306:3306
: 将容器的3306
端口映射到主机的3306
端口,以便外部可以访问 MySQL 服务。
注意事项
- 确保服务器的
/data/mysql_data
目录有足够的权限供 MySQL 容器读写数据。 - 如果
/data/mysql_data
目录中已经有旧数据,请确保这些数据不会影响 MySQL 的正常运行。 - 在 MySQL 容器重新创建或升级时,数据卷中的数据不会丢失,但是在升级前请备份重要数据。
通过以上步骤,你可以实现将 MySQL 数据持久化存储到服务器的 data
文件夹中,确保数据在容器重新启动或删除后仍然可用。
验证 MySQL 容器
检查 MySQL 容器是否运行:
docker ps
总结
通过以上步骤,你可以使用阿里云镜像源加速 Docker 镜像的拉取,并成功部署 MySQL 容器。那么部署mysql如此,其他redis、es亦是如此,是不是速度飞起,觉得有用帮忙点个赞
上一文链接
Docker 部署 Mysql_docker 部署mysql-CSDN博客