Docker 入门实战:从安装到跑起第一个容器

举报
yd_222568844 发表于 2026/10/29 10:38:14 2026/10/29
【摘要】 从安装验证到运行 Nginx、自己打包 Python 应用,一步步带你跑起第一个 Docker 容器,并避开新手常见坑。

第一次接触 Docker 时,很多人都会问:它和虚拟机有什么不同?简单说,Docker 把应用和运行环境打包成轻量、可移植的容器,启动快、占用少,在不同机器上跑起来也尽量一致。

一、三个核心概念

镜像是只读模板,类似安装包;容器是镜像运行起来的实例;仓库是存放镜像的地方。先拉取镜像,才能创建并运行容器;容器停止后可以再启动,删除容器也不会自动删除镜像。

二、安装并验证

Windows 和 macOS 建议安装 Docker Desktop,启动后等状态显示运行中。Linux 可用包管理器安装并启动服务。随后执行 docker --version,能看到版本号即表示可用;再执行 docker run hello-world,输出提示即说明拉取镜像到运行容器已打通。

三、跑起第一个服务

以 Nginx 为例:

docker run -d -p 8080:80 --name my-nginx nginx

-d 表示后台运行,-p 8080:80 表示把主机 8080 端口映射到容器 80 端口。在浏览器打开本地 8080 端口,能看到欢迎页即成功。常用管理命令是:docker ps 查看运行中容器,docker logs my-nginx 查看日志,docker stop / start 停止与启动,docker rm 删除容器。

四、自己打包一个应用

先写一个简单的 Python 主程序,再写 Dockerfile:

FROM python:3.12-slim
WORKDIR /app
COPY app.py .
EXPOSE 5000
CMD ["python", "app.py"]

构建并运行:

docker build -t my-web:1.0 .
docker run -d -p 5000:5000 --name my-web my-web:1.0

在浏览器打开本地 5000 端口验证。换一台机器时,带上代码和 Dockerfile 重新构建,就能得到基本一致的环境。

五、数据与常见坑

容器默认是临时的,重要数据要用数据卷挂载出来,如 docker run -v mydata:/data,不要只放在容器里。常见坑有:端口被占用时换主机端口;镜像拉取慢时检查网络或配置可用镜像源;Linux 下提示权限不足时,确认用户是否在 docker 组;一个容器尽量只跑一个主进程,不要把它当虚拟机用。

结尾

到这里,你已完成安装验证、运行现成服务和自己构建镜像的闭环。下一步可以试试 Docker Compose,同时管理应用和数据库;也可以学习多阶段构建,让镜像更小、更安全。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。