Docker 默认需要 root 权限,因为它要操作系统内核的功能。
sudo -i
🐳 镜像相关
拉取镜像
docker pull 镜像名:标签
查看镜像
docker images
删除镜像
docker rmi 镜像ID或名称:标签
查看镜像详情
docker inspect 镜像ID
📦 容器相关
创建并运行容器
docker run [参数] 镜像名
查看正在运行的容器
docker ps
查看所有容器(包括停止的)
docker ps -a
进入容器
docker exec -it 容器名 bash
停止容器
docker stop 容器名
启动容器
docker start 容器名
删除容器
docker rm 容器名
Docker(Mysql)
①拉取 MySQL 镜像
先用 docker pull 命令从 Docker Hub 下载 MySQL 镜像:
docker pull mysql:latest
②创建并运行容器
拉取好镜像后,就可以用 docker run 创建容器。最基本的命令如下:
docker run -d --name mymysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:latest
参数解释
docker run → 创建并运行一个容器
-d (detach) → 后台运行容器,不占用当前终端
--name mymysql → 给容器起名字叫 mymysql,方便后续管理
-e MYSQL_ROOT_PASSWORD=123456 → 设置 MySQL root 用户的密码为 123456(必须指定,否则容器无法启动)
-p 3306:3306 → 把宿主机的 3306 端口映射到容器的 3306 端口,这样你可以在宿主机用 mysql -h 127.0.0.1 -P 3306 -u root -p 连接数据库
mysql:latest → 使用 MySQL 镜像的最新版本
查看日志
docker logs -f mymysql
③进入容器(在容器内连接mysql)
docker exec -it mymysql bash
宿主机要连接mysql安装
sudo apt install mysql-client-core-8.0 -y
宿主机连接容器mysql指令
mysql -u root -p -h 127.0.0.1 -P 3306
Docker(MongoDB)
拉取镜像
docker pull mongo:latest
启动容器
docker run -d --name mymongo -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=123456 mongo:latest
解释
--name mymongo → 容器名字
-p 27017:27017 → 将宿主机的 27017 端口映射到容器的 27017(MongoDB 默认端口)
MONGO_INITDB_ROOT_USERNAME → 设置管理员用户名
MONGO_INITDB_ROOT_PASSWORD → 设置管理员密码
查看日志
docker logs mymongo
实时跟踪日志
docker logs -f mymongo
进入容器启动bash shell
docker exec -it mymongo bash
进入mongo
mongosh -u root -p 123456
Navicat局域网连接
填写连接信息
主机 (Host):
如果在宿主机上用 Navicat → 127.0.0.1
如果在局域网其他电脑上用 Navicat → 宿主机的局域网 IP,例如 192.168.10.66
端口 (Port):27017(MongoDB 默认端口)
用户名 (User):root
密码 (Password):123456
认证数据库 (Authentication Database):admin 👉 这是必须填的,因为你在启动容器时设置的 root 用户是在 admin 库里创建的。
123