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,同时管理应用和数据库;也可以学习多阶段构建,让镜像更小、更安全。
- 点赞
- 收藏
- 关注作者
评论(0)