Docker 入门:构建、运行与常见排错
1. 基本概念:镜像与容器
你可以把“镜像”理解为只读模板,把“容器”理解为运行中的实例。日常工作主要围绕:拉取镜像、运行容器、必要时构建新镜像。
2. 快速开始
# 查看 Docker 版本
docker --version
# 拉取一个镜像(示例:nginx)
docker pull nginx:alpine
# 运行容器并映射端口
docker run -d --name web -p 8080:80 nginx:alpine
访问:http://localhost:8080
3. 你会经常用到的命令
docker ps:查看正在运行的容器。docker logs <name>:查看日志(排错很常用)。docker exec -it <name> sh:进入容器交互式查看。docker stop/docker rm:停止并删除容器。
docker ps
docker logs web
docker exec -it web sh
docker stop web
docker rm web
4. 挂载与配置
当需要持久化数据或替换配置文件时,可以使用数据卷或挂载目录。常见场景:把本地配置文件挂到容器内指定路径。
docker run -d --name web \
-p 8080:80 \
-v C:\path\to\nginx.conf:/etc/nginx/nginx.conf:ro \
nginx:alpine
5. 常见排错思路
- 端口映射不通:确认容器内部服务监听的端口是否正确。
- 容器启动即退出:查看
docker logs,通常是命令/配置错误。 - 权限问题:挂载目录是否有权限读写。
- 网络问题:确认容器是否能解析域名或访问目标地址。
6. 构建自己的镜像(概念入门)
当你有自定义应用时,用 Dockerfile 构建镜像。构建完成后再用 docker run 启动容器。
# 在包含 Dockerfile 的目录运行
docker build -t my-app:1.0 .
docker run -p 8080:8080 my-app:1.0
建议你先把“拉取-运行-看日志-进入容器”这条链路熟练起来,后面遇到问题效率会很高。