mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-27 12:15:34 +00:00
Remove blank lines after code block markers
This commit is contained in:
@@ -5,7 +5,6 @@
|
||||
```docker
|
||||
ONBUILD <其它指令>
|
||||
```
|
||||
|
||||
`ONBUILD` 是一个特殊的指令,它后面跟的是其它指令 (如 `RUN`,`COPY` 等),这些指令 **在当前镜像构建时不会执行**,只有当以当前镜像为基础镜像去构建下一级镜像时才会被执行。
|
||||
|
||||
---
|
||||
@@ -42,7 +41,6 @@ ONBUILD COPY . .
|
||||
|
||||
CMD ["npm", "start"]
|
||||
```
|
||||
|
||||
**子项目 Dockerfile**:
|
||||
|
||||
```docker
|
||||
@@ -54,7 +52,6 @@ FROM my-node-base
|
||||
|
||||
...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 7.13.3 执行机制
|
||||
@@ -67,7 +64,6 @@ Dockerfile (含 ONBUILD) ──build──> 基础镜像 (记录了 ONBUILD 触
|
||||
子镜像构建:
|
||||
FROM 基础镜像 ──build──> 读取基础镜像触发器 ──> 执行触发器指令 ──> 继续执行子 Dockerfile
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 7.13.4 常见使用场景
|
||||
@@ -75,32 +71,26 @@ FROM 基础镜像 ──build──> 读取基础镜像触发器 ──> 执行
|
||||
#### 1. 自动处理依赖安装
|
||||
|
||||
```docker
|
||||
|
||||
## Python 基础镜像
|
||||
|
||||
ONBUILD COPY requirements.txt ./
|
||||
ONBUILD RUN pip install -r requirements.txt
|
||||
```
|
||||
|
||||
#### 2. 自动编译代码
|
||||
|
||||
```docker
|
||||
|
||||
## Go 基础镜像
|
||||
|
||||
ONBUILD COPY . .
|
||||
ONBUILD RUN go build -o app main.go
|
||||
```
|
||||
|
||||
#### 3. 处理静态资源
|
||||
|
||||
```docker
|
||||
|
||||
## Nginx 静态网站基础镜像
|
||||
|
||||
ONBUILD COPY dist/ /usr/share/nginx/html/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 7.13.5 注意事项
|
||||
@@ -137,7 +127,6 @@ ONBUILD COPY dist/ /usr/share/nginx/html/
|
||||
node:20-onbuild
|
||||
python:3.12-onbuild
|
||||
```
|
||||
|
||||
#### 2. 避免执行耗时操作
|
||||
|
||||
尽量不要在 `ONBUILD` 中执行过于耗时或不确定的操作 (如更新系统软件),这会让子镜像构建变得缓慢且不可控。
|
||||
|
||||
Reference in New Issue
Block a user