
不管是dify还是n8n,可以看到很多项目想要本地部署都需要使用docker,我们讲一下在Windows上安装docker的方法。以win11为例。
开启Windows功能
可以在开始搜索功能打开:



安装WSL 2
在开始搜索cmd,选择以管理员身份运行

然后输入以下指令(win11默认安装的就是WSL 2):
wsl --install
下载 Docker Desktop
网站链接:https://www.docker.com/products/docker-desktop/

双击运行下载完的exe

点击ok,等待安装即可


等待电脑注销后重新启动,稍等一会儿,会弹出一个弹框

登录docker desktop(可直接跳过登录)
这里可以直接点击Continue without signing in跳过注册登录,如果你想登录,那么下方是登录步骤

此时会打开一个页面(页面不展示的,看自己的魔法打开了没有),可以用邮箱注册,也可以直接使用Google或者github进行登录

那这里我选择的是github

填写用户名,想写什么都行,只要没有提示你重读,然后登录

出现下面这个界面代表我们登录进来了

接下来再回到docker desktop,选择sign in

此时会打开一个页面,弹出请求,我们点击打开,如果没有弹出,点击下面的按钮Proceed to Docker Desktop

然后我们的应用程序就进入登录状态了

配置国内镜像源
为了避免之后拉取某些镜像失败,需要配置一下国内的镜像源

配置如下,直接全部替换即可,替换完点击Apply&restart(应用并重启)
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://docker-0.unsee.tech",
"https://docker-cf.registry.cyou",
"https://docker.1panel.live"
]
}
运行镜像hello world!
打开cmd,输入运行hello-world指令,看到Hello form Docker!就说明:
- Docker 客户端/守护进程通信正常 ✅
- 联网下载镜像能力正常 ✅
- 容器创建/运行能力正常 ✅
docker run hello-world

进一步尝试-Nginx
- 运行真实服务 # 启动一个后台运行的 Nginx 容器
docker run -d -p 8080:80 –name myweb nginx- 访问
http://localhost:8080即可看到 Nginx 欢迎页
- 访问
- 查看运行中的容器 docker ps # 查看运行状态(应看到 myweb 容器)或者打开我们的docker可视化应用

- 停止并清理实验容器 docker stop myweb # 停止容器
docker rm myweb # 删除容器,这里也可以写容器的id也可以在可视化页面里直接停止、删除参数详解docker run- Docker 的核心命令,用于创建并启动一个新容器
- 相当于:下载软件 + 安装 + 启动 一步完成
-d--detach的简写(后台模式)- 作用:让容器在后台运行
- 不加此参数:容器会占用当前终端(前台运行),按
Ctrl+C会停止容器 - ✅ 生产环境必备参数
-p 8080:80--publish的简写(端口映射)- 格式:
-p <宿主机端口>:<容器端口> - 作用:
8080:你本地电脑或服务器的端口80:容器内部 Nginx 监听的端口(Nginx 默认监听 80)
- 效果: 访问
http://localhost:8080→ 流量转发 → 容器的 80 端口 → Nginx 服务 - ❗ 关键作用:突破 Docker 的网络隔离,让外部能访问容器服务
--name myweb- 作用:给容器指定自定义名称(此处命名为
myweb) - 不指定时:Docker 会随机生成名称
- 好处:
- 易记:
docker stop myweb比docker stop 3a8b7c更直观 - 避免重复:同名容器只能存在一个
- 管理方便:日志查看、进入容器等操作更简单
- 易记:
- 作用:给容器指定自定义名称(此处命名为
nginx- 指定使用的镜像名称
- Docker 会依次检查:
- 本地是否存在
nginx镜像 - 若不存在 → 自动从 Docker Hub 下载最新版(
nginx:latest)
- 本地是否存在
- 可指定版本:
nginx:1.23或nginx:alpine(轻量版)
💡 提示:如果访问
localhost:8080失败,检查是否因端口冲突(如已安装本地 Nginx)。可改用-p 8888:80映射其他端口。
现在证明你的环境已准备好探索更多容器技术!接下来可以尝试部署数据库、Web应用等真实服务了。


