Fix and update

This commit is contained in:
baohua
2026-02-09 11:34:35 -08:00
parent e669ee0fe8
commit 63377d0431
136 changed files with 2146 additions and 262 deletions

View File

@@ -1,5 +1,7 @@
## 启动容器
本节将详细介绍 Docker 容器的启动方式包括新建启动和重新启动已停止的容器
### 启动方式概述
启动容器有两种方式
@@ -12,6 +14,8 @@
#### 基本语法
运行以下命令
```bash
docker run [选项] 镜像 [命令] [参数...]
```
@@ -97,47 +101,65 @@ root@af8bae53bdd3:/# exit # 退出容器
#### 端口映射
运行以下命令
```bash
## 将容器的 80 端口映射到宿主机的 8080 端口
$ docker run -d -p 8080:80 nginx
## 随机映射端口
$ docker run -d -P nginx
## 只绑定到 localhost
$ docker run -d -p 127.0.0.1:8080:80 nginx
```
#### 数据卷挂载
运行以下命令
```bash
## 挂载命名卷
$ docker run -v mydata:/data nginx
## 挂载宿主机目录
$ docker run -v /host/path:/container/path nginx
## 只读挂载
$ docker run -v /host/path:/container/path:ro nginx
```
#### 环境变量
运行以下命令
```bash
## 设置单个环境变量
$ docker run -e MYSQL_ROOT_PASSWORD=secret mysql
## 从文件加载环境变量
$ docker run --env-file .env myapp
```
#### 资源限制
运行以下命令
```bash
## 限制内存
$ docker run -m 512m nginx
## 限制 CPU
$ docker run --cpus=1.5 nginx
```
@@ -147,14 +169,17 @@ $ docker run --cpus=1.5 nginx
```bash
## 查看所有容器(包括已停止的)
$ docker ps -a
CONTAINER ID IMAGE STATUS NAMES
af8bae53bdd3 ubuntu Exited (0) 2 minutes ago myubuntu
## 重新启动
$ docker start myubuntu
## 启动并附加终端
$ docker start -ai myubuntu
```
@@ -181,9 +206,11 @@ root@ba267838cc1b:/# ps
```bash
## 这个容器会立即退出echo 执行完就结束了)
$ docker run ubuntu echo "hello"
## 解决:使用能持续运行的命令
$ docker run -d nginx # nginx 是持续运行的服务
```
@@ -195,9 +222,11 @@ $ docker run -d nginx # nginx 是持续运行的服务
```bash
## 错误:没有 -p 参数,外部无法访问
$ docker run -d nginx
## 正确:映射端口
$ docker run -d -p 80:80 nginx
```
@@ -207,6 +236,7 @@ $ docker run -d -p 80:80 nginx
```bash
## 使用数据卷持久化
$ docker run -v mydata:/app/data myapp
```