mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-10 11:54:37 +00:00
Fix and update
This commit is contained in:
@@ -15,6 +15,8 @@ Docker 容器默认是**前台运行**的。使用 `-d`(detach)参数可以
|
||||
|
||||
#### 前台运行(默认)
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
$ docker run ubuntu:24.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"
|
||||
hello world
|
||||
@@ -30,6 +32,8 @@ hello world
|
||||
|
||||
#### 后台运行(使用 -d 参数)
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
$ docker run -d ubuntu:24.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"
|
||||
77b2dc01fe0f3f1265df143181e7b9af5e05279a884f4776ee75350ea9d8017a
|
||||
@@ -55,6 +59,8 @@ $ docker run -d ubuntu:24.04
|
||||
|
||||
#### 核心原理:容器的生命周期与主进程绑定
|
||||
|
||||
具体内容如下:
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────────┐
|
||||
│ Docker 容器的生命周期 = 容器内 PID 1 进程的生命周期 │
|
||||
@@ -87,6 +93,8 @@ $ docker run -d ubuntu:24.04
|
||||
|
||||
#### 查看运行中的容器
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
$ docker container ls
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
@@ -95,6 +103,8 @@ CONTAINER ID IMAGE COMMAND CREATED STATUS PO
|
||||
|
||||
#### 查看容器输出日志
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
$ docker container logs 77b2dc01fe0f
|
||||
hello world
|
||||
@@ -111,6 +121,8 @@ $ docker container logs -f 77b2dc01fe0f
|
||||
|
||||
#### 查看已停止的容器
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
$ docker container ls -a
|
||||
```
|
||||
@@ -121,14 +133,19 @@ $ docker container ls -a
|
||||
|
||||
#### 1. 长期运行的服务使用 -d
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
## Web 服务器
|
||||
|
||||
$ docker run -d -p 80:80 nginx
|
||||
|
||||
## 数据库
|
||||
|
||||
$ docker run -d -p 3306:3306 mysql:8
|
||||
|
||||
## 缓存服务
|
||||
|
||||
$ docker run -d -p 6379:6379 redis
|
||||
```
|
||||
|
||||
@@ -138,6 +155,7 @@ $ docker run -d -p 6379:6379 redis
|
||||
|
||||
```bash
|
||||
## 有问题的容器,先前台运行看看发生了什么
|
||||
|
||||
$ docker run myimage:latest
|
||||
```
|
||||
|
||||
@@ -149,21 +167,30 @@ $ docker run myimage:latest
|
||||
$ docker run --rm ubuntu:24.04 echo "Hello, World!"
|
||||
Hello, World!
|
||||
## 容器执行完后自动删除
|
||||
|
||||
具体内容如下:
|
||||
|
||||
```
|
||||
|
||||
#### 4. 配合日志查看
|
||||
|
||||
运行以下命令:
|
||||
|
||||
```bash
|
||||
## 后台启动
|
||||
|
||||
$ docker run -d --name myapp myimage:latest
|
||||
|
||||
## 查看最近 100 行日志
|
||||
|
||||
$ docker logs --tail 100 myapp
|
||||
|
||||
## 实时跟踪日志
|
||||
|
||||
$ docker logs -f myapp
|
||||
|
||||
## 查看带时间戳的日志
|
||||
|
||||
$ docker logs -t myapp
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user