大家好,我是工藤学编程 🦉 | 一个正在努力学习的小博主,期待你的关注 |
|---|---|
实战代码系列最新文章😉 | C++实现图书管理系统(Qt C++ GUI界面版) |
SpringBoot实战系列🐷 | 【SpringBoot实战系列】Sharding-Jdbc实现分库分表到分布式ID生成器Snowflake自定义wrokId实战 |
环境搭建大集合 | 环境搭建大集合(持续更新) |
分库分表 | 分库分表技术栈讲解-Sharding-JDBC |
# 更新包索引
sudo apt update
# 安装必要的依赖
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
# 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加 Docker 软件源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新包索引(包含新添加的 Docker 源)
sudo apt update
# 安装 Docker CE
sudo apt install -y docker-ce docker-ce-cli containerd.io
#执行以下命令,检查Docker是否安装成功。
sudo docker -v
#执行以下命令,启动Docker服务,并设置开机自启动。
sudo systemctl start docker
sudo systemctl enable docker
#执行以下命令,查看Docker是否启动。
sudo systemctl status docker最终执行结果如下,说明我们成功安装docker

安装成功之后,我们还需要配置镜像加速
([ -f /etc/docker/daemon.json ] || mkdir -p /etc/docker) && echo '{ "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://noohub.ru", "https://huecker.io", "https://dockerhub.timeweb.cloud" ] }' > /etc/docker/daemon.json && sudo systemctl restart docker && sleep 1 && docker info | grep -A 4 "Registry Mirrors"我这里执行镜像加速命令报/etc/docker/deamon.json权限不够

这是因为直接使用 > 重定向符号尝试写入受保护的系统文件,而没有使用 sudo 提升权限。 要解决这个问题,你需要使用 sudo 来执行文件写入操作。以下是修正后的命令:
([ -f /etc/docker/daemon.json ] || sudo mkdir -p /etc/docker) && \
echo '{ "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://noohub.ru", "https://huecker.io", "https://dockerhub.timeweb.cloud" ] }' | \
sudo tee /etc/docker/daemon.json > /dev/null && \
sudo systemctl restart docker && \
sleep 1 && \
docker info | grep -A 4 "Registry Mirrors"执行修改后的命令之后,仍有报错

解决方案:
# 添加当前用户到 docker 组
sudo usermod -aG docker $USER
# 刷新用户组(立即生效)
newgrp docker
# 验证权限
docker info | grep -A 4 "Registry Mirrors"
docker安装成功!
#运行以下命令,下载docker-ce的yum源。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#运行以下命令,安装Docker。
sudo yum -y install docker-ce
#执行以下命令,检查Docker是否安装成功。
sudo docker -v
#执行以下命令,启动Docker服务,并设置开机自启动。
sudo systemctl start docker
sudo systemctl enable docker
#执行以下命令,查看Docker是否启动。
sudo systemctl status docker
#配置Docker镜像加速
([ -f /etc/docker/daemon.json ] || mkdir -p /etc/docker) && echo '{ "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://noohub.ru", "https://huecker.io", "https://dockerhub.timeweb.cloud" ] }' > /etc/docker/daemon.json && sudo systemctl restart docker && sleep 1 && docker info | grep -A 4 "Registry Mirrors"#创建目录
mkdir -p /home/data/mysql/
#创建配置文件
touch /home/data/mysql/my.cnf
#部署
docker run \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /home/data/mysql/conf:/etc/mysql/conf.d \
-v /home/data/mysql/data:/var/lib/mysql:rw \
-v /home/data/mysql/my.cnf:/etc/mysql/my.cnf \
--name ccc_mysql \
--restart=always \
-d mysql:8.0-e MYSQL_ROOT_PASSWORD=123456 记得将123456修改为自己想要设置的密码 –name ccc_mysql ccc_mysql可以修改为自己想要的容器名称
sudo apt update
sudo apt install mysql-client -ysudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
sudo yum install mysql-community-client -y安装完成后,通过以下命令验证客户端是否正常工作:
mysql --version
mysql -h 127.0.0.1 -P 3306 -u root -p输入密码后连接成功

编辑挂载的配置文件 /home/data/mysql/my.cnf:
vim /home/data/mysql/my.cnfvim需要先键盘点击 i,然后把内容进行修改,修改完成后使用esc键退出编辑,然后再输入:wq,报错并退出
添加或修改以下内容:
[mysqld]
bind-address = 0.0.0.0 # 允许所有IP访问重启 MySQL 容器使配置生效:
docker restart ccc_mysqlccc_mysql记得改成自己的容器名称
确保容器端口正确映射
docker ps | grep ccc_mysql
# 输出应包含类似: 0.0.0.0:3306->3306/tcp开放防火墙端口(如果有防火墙)如果虚拟机启用了防火墙(如 Ubuntu 的 ufw),开放 3306 端口:
sudo ufw allow 3306/tcp
sudo ufw reload大家可以通过 MySQL 客户端工具尝试,这里我通过java代码尝试,插入数据成功!

觉得有用请点赞收藏! 如果有相关问题,欢迎评论区留言讨论~