Docker极简入门——从“Hello World”到部署你的第一个Web应用

一、初识容器

场景问题:为什么用容器?

在传统运维环境中,我们常常面临以下痛点:

  • 应用部署环境不一致导致“环境烟雾”问题

  • 依赖冲突或版本不匹配带来重装、排查成本

  • 虚拟机启动慢、资源利用率低

通过容器技术,开发、测试、生产环境可以使用同一镜像打包!保证“一次构建,到处运行”。同时,容器启动快、资源开销小,让云原生时代成为可能。

对比物理机、虚拟机、容器

类型启动时间资源开销隔离方式
物理机数分钟~数小时独占硬件
虚拟机数十秒~数分钟全虚拟化,内存+磁盘占用大完全面向硬件模拟
容器毫秒~数秒进程级隔离,内核共享操作系统层面命名空间隔离

一句话定义 Docker:轻量化的应用打包工具


二、3 步上手 Docker

Step 1 安装

以 Ubuntu 为例:

sudo apt-get update && sudo apt-get install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker

安装完成后,执行 docker version 可看到客户端和服务端版本信息。

Step 2 运行“Hello World”容器

docker run hello-world

Docker 会拉取官方 hello-world 镜像并运行。屏幕输出欢迎信息,说明安装无误。

Step 3 部署 Web 应用

以 Nginx 为例:

docker run -d -p 80:80 --name my-nginx nginx
# 验证
curl http://localhost

此时浏览器或命令行会显示 Nginx 默认欢迎页面,完成你的第一个容器化 Web 应用部署。


三、理解核心概念

Docker 架构图解

  • Client:命令行或 API 客户端。

  • Daemon (dockerd):后台服务,负责管理镜像、容器等。

  • Images:只读模板,用于创建容器。

  • Containers:镜像的运行实例,包含应用进程及其依赖。

Client ↔ Daemon ←→ Images + Containers

常用命令速查表

命令说明
docker ps -a查看所有容器
docker images查看本地镜像
docker exec -it <container> bash进入容器内部
docker logs <container>查看容器日志
docker stop <container>停止指定容器
docker rm <container>删除已停止容器

四、避坑指南

  1. 权限问题:首次使用可能遇到 permission denied while trying to connect to the Docker daemon

    sudo usermod -aG docker $USER
    newgrp docker
  2. 磁盘空间清理:频繁拉取与构建镜像会占用大量空间。

     

docker system prune -a

3. **容器删除**:一键清理所有容器。
```bash
docker rm -f $(docker ps -aq)

最后在学习的过程中有什么问题欢迎在评论区留言!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值