Docker是容器化技术的核心,能实现“一次打包,到处运行”,解决了“开发环境和生产环境不一致”的痛点。很多新手觉得Docker配置复杂、命令多,其实用Docker部署常用服务(如MySQL、Redis),只需几条命令,5分钟就能搞定!

今天分享Docker的入门操作——从安装到部署MySQL,每一步都有详细命令和说明,新手跟着操作,轻松上手Docker~

一、准备工作:Docker安装(以Linux为例,Windows/Mac类似)

1. 安装Docker:

# 卸载旧版本(如有)
sudo apt-get remove docker docker-engine docker.io containerd runc

# 设置仓库
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/trusted.gpg.d
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker.gpg
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/trusted.gpg.d/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# 安装Docker Engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
2. 验证安装:

sudo docker --version  # 显示Docker版本,说明安装成功
sudo docker run hello-world  # 运行测试容器,输出欢迎信息
3. 免sudo操作(可选,避免每次输sudo):

sudo usermod -aG docker $USER  # 将当前用户加入docker组
# 重启终端后生效

二、Docker核心概念(新手必懂)

  • 镜像(Image):容器的模板(如MySQL镜像、Redis镜像);

  • 容器(Container):镜像的运行实例(启动镜像就是创建容器);

  • 仓库(Repository):存储镜像的地方(如Docker Hub)。

三、核心操作:部署MySQL容器

1. 拉取MySQL镜像(从Docker Hub下载):

# 拉取MySQL 8.0版本(指定版本,避免最新版兼容性问题)
docker pull mysql:8.0

# 查看本地镜像
docker images  # 能看到mysql:8.0,说明拉取成功
2. 启动MySQL容器(核心命令):

docker run -d \
  --name mysql-demo \  # 容器名(自定义)
  -p 3306:3306 \       # 端口映射(主机3306 → 容器3306)
  -e MYSQL_ROOT_PASSWORD=123456 \  # root密码(自定义)
  -e MYSQL_DATABASE=test_db \      # 初始化创建的数据库
  -v /usr/local/mysql/data:/var/lib/mysql \  # 数据卷挂载(持久化数据)
  mysql:8.0  # 镜像名:版本

参数说明:

  • -d:后台运行容器;

  • --name:指定容器名;

  • -p:端口映射(主机端口:容器端口);

  • -e:设置环境变量(密码、初始化数据库);

  • -v:数据卷挂载(将容器内的数据目录映射到主机,避免容器删除后数据丢失)。

3. 验证容器运行:

# 查看运行中的容器
docker ps  # 能看到mysql-demo容器,状态Up

# 进入容器内部
docker exec -it mysql-demo /bin/bash

# 连接MySQL(容器内)
mysql -u root -p
# 输入密码123456,成功连接说明部署完成

# 退出容器
exit
4. 外部连接MySQL:

用Navicat/DBeaver等工具,连接主机IP:3306,用户名root,密码123456,即可访问Docker中的MySQL。

四、Docker常用命令(新手必记)


# 查看所有容器(包括停止的)
docker ps -a

# 启动/停止/重启容器
docker start mysql-demo
docker stop mysql-demo
docker restart mysql-demo

# 删除容器(需先停止)
docker stop mysql-demo
docker rm mysql-demo

# 删除镜像(需先删除依赖的容器)
docker rmi mysql:8.0

# 查看容器日志(排查问题)
docker logs mysql-demo

五、新手避坑指南

  1. 端口映射冲突:如果主机3306端口被占用,修改-p 3307:3306(主机用3307端口);

  2. 数据持久化:必须加-v挂载数据卷,否则容器删除后数据丢失;

  3. 密码设置:MYSQL_ROOT_PASSWORD必须设置,否则容器启动失败;

  4. 容器启动失败:用docker logs 容器名查看日志,排查问题(如端口冲突、密码不符合规则)。

最后

Docker的核心是“镜像-容器”,新手先掌握“拉取镜像-启动容器-端口映射-数据卷挂载”这四个核心步骤,后续再学习自定义镜像、Docker Compose等进阶内容。

更多推荐