Remove blank lines after code block markers

This commit is contained in:
yeasy
2026-03-21 22:36:09 -07:00
parent 312f8fea42
commit 9ac19d79ee
132 changed files with 0 additions and 1517 deletions

View File

@@ -9,7 +9,6 @@
```html
<h1>Hello, Docker!</h1>
```
### 1.1.2 编写 Dockerfile
在同级目录下创建一个名为 `Dockerfile` (无后缀) 的文件
@@ -18,7 +17,6 @@
FROM nginx:alpine
COPY index.html /usr/share/nginx/html/index.html
```
### 1.1.3 构建镜像
打开终端进入该目录执行构建命令
@@ -26,7 +24,6 @@ COPY index.html /usr/share/nginx/html/index.html
```bash
$ docker build -t my-hello-world .
```
* `docker build`构建命令
* `-t my-hello-world`给镜像起个名字 (标签)
* `.`指定上下文路径为当前目录
@@ -38,7 +35,6 @@ $ docker build -t my-hello-world .
```bash
$ docker run -d -p 8080:80 my-hello-world
```
* `docker run`运行命令
* `-d`后台运行
* `-p 8080:80`将宿主机的 8080 端口映射到容器的 80 端口
@@ -52,7 +48,6 @@ $ docker run -d -p 8080:80 my-hello-world
停止并删除容器
```bash
## 查看正在运行的容器 ID
$ docker ps
@@ -65,5 +60,4 @@ $ docker stop <CONTAINER_ID>
$ docker rm <CONTAINER_ID>
```
恭喜你已经完成了第一次 Docker 实战接下来请阅读 [Docker 核心概念](../02_basic_concept/README.md)做深入了解

View File

@@ -26,7 +26,6 @@ flowchart LR
end
A -.->|不一致| C
```
有了 Docker
```mermaid
@@ -41,7 +40,6 @@ flowchart LR
end
A == 一致 ==> C
```
### 1.2.3 Docker vs 虚拟机
很多人第一次接触 Docker 时会问**这不就是虚拟机吗** 答案是**不是而且差别很大**
@@ -94,7 +92,6 @@ flowchart LR
runC --> OCI["OCI<br/>标准化"]
end
```
- **LXC** (2013)Docker 最初基于 Linux Containers
- **libcontainer** (2014v0.7)Docker 自研的容器运行时
- **runC** (2015v1.11)捐献给 OCI 的标准容器运行时

View File

@@ -15,7 +15,6 @@
│ └── 测试:"这个功能在测试环境跑不起来"
└── 开发者:"不可能,在我电脑上明明能跑啊……"
```
笔者统计过这个问题通常由以下原因导致
- Python/Node/Java 版本不一致
@@ -34,7 +33,6 @@
├── Day 4问老同事怎么配的他也忘了
└── Day 5终于能跑起来了但不知道为什么……
```
#### 场景三服务器迁移的恐惧
```bash
@@ -43,7 +41,6 @@
运维:"当时是一个已经离职的同事配的……"
所有人:😱
```
### 1.3.2 Docker 如何解决这些问题
Docker 的出现为上述问题提供了完美的解决方案它通过 一次构建到处运行 的核心理念从根本上改变了软件交付的方式
@@ -57,7 +54,6 @@ flowchart LR
test -- "有问题<br/>反馈修改和更新" --> dev
test -- "没问题<br/>发布" --> prod["生产环境"]
```
### 1.3.3 Docker 的核心优势
除了解决上述痛点Docker 还拥有诸多显著的技术优势包括环境一致性秒级启动高效的资源利用等
@@ -71,7 +67,6 @@ Docker 镜像包含了应用运行所需的 **一切**:代码、运行时、
- 新人入职一条命令就能启动开发环境
```bash
## 新同事入职第一天
$ git clone https://github.com/company/project.git
@@ -81,7 +76,6 @@ $ docker compose up
...
```
#### 2. 秒级启动
传统虚拟机启动需要几分钟 (引导操作系统) Docker 容器启动通常只需要 **几秒甚至几百毫秒**
@@ -132,7 +126,6 @@ flowchart TD
Server2 --- Containers
end
```
#### 4. 持续交付和部署
Docker 完美契合 DevOps 的工作流程
@@ -143,7 +136,6 @@ flowchart LR
B --> C["自动测试<br/>(容器内运行测试)"]
C --> D["自动部署<br/>(容器滚动更新)"]
```
使用 [Dockerfile](../04_image/4.5_build.md) 定义镜像构建过程使得
- 构建过程 **可重复可追溯**
@@ -190,7 +182,6 @@ flowchart TD
Worker --> DB
end
```
### 1.3.4 Docker 不适合的场景
笔者认为技术选型要客观Docker 并非银弹以下场景可能不太适合