Docker(基础指令)

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

相关推荐
不会就选b11 小时前
Linux之TCP理论<1>
linux·运维·服务器
倔强的石头10612 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Android系统攻城狮13 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_samples_min调用流程与实战(六十)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
_upupup14 小时前
Linux中的自动化构建——make/Makefile
linux·运维·自动化
还卿一钵无情泪15 小时前
Docker 部署Unsloth 绕开环境配置难题
运维·人工智能·docker·ai·容器·nlp·干货
打工仔折腾 AI16 小时前
Docker镜像分层与卷挂载到底怎么工作:一次文件系统层面的实测分析
运维·人工智能·后端·python·docker·容器·性能优化
大猫会长16 小时前
调用codebuddy集成的supabase授权白屏解决方法
linux·运维·服务器
夜之眷属17 小时前
服务器被挖矿病毒入侵的排查与清理实录
运维·服务器
极客先躯17 小时前
高级java每日一道面试题-2026年01月20日-实战篇[Docker]-如何实现镜像的跨区域复制?
java·运维·docker·容器·架构图
韩振方17 小时前
为什么服务显示占了 8G,实际内存却没那么多?
运维