Skip to content

Commit 8bdb840

Browse files
committed
Fix words
1 parent e08a34b commit 8bdb840

File tree

36 files changed

+343
-183
lines changed

36 files changed

+343
-183
lines changed

README.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Docker — 从入门到实践
22

3-
[![](https://img.shields.io/github/stars/yeasy/docker_practice.svg?style=social&label=Stars)](https://github.com/yeasy/docker_practice) [![](https://img.shields.io/github/release/yeasy/docker_practice/all.svg)](https://github.com/yeasy/docker_practice/releases) [![](https://img.shields.io/badge/Based-Docker%20CE%20v20.10-blue.svg)](https://github.com/docker/docker-ce) [![](https://img.shields.io/badge/Docker%20%E6%8A%80%E6%9C%AF%E5%85%A5%E9%97%A8%E4%B8%8E%E5%AE%9E%E6%88%98-jd.com-red.svg)][1]
3+
[![](https://img.shields.io/github/stars/yeasy/docker_practice.svg?style=social&label=Stars)](https://github.com/yeasy/docker_practice) [![](https://img.shields.io/github/release/yeasy/docker_practice/all.svg)](https://github.com/yeasy/docker_practice/releases) [![](https://img.shields.io/badge/Based-Docker%20CE%20v27.x-blue.svg)](https://github.com/docker/docker-ce) [![](https://img.shields.io/badge/Docker%20%E6%8A%80%E6%9C%AF%E5%85%A5%E9%97%A8%E4%B8%8E%E5%AE%9E%E6%88%98-jd.com-red.svg)][1]
44

5-
**v1.3.1**
5+
**v1.4.0**
66

7-
| 语言 | - |
8-
| :------------- | :--- |
9-
| [简体中文](https://github.com/yeasy/docker_practice) | [阅读](https://vuepress.mirror.docker-practice.com/) |
7+
| 语言 | - |
8+
| :----------------------------------------------- | :------------------------------------------------- |
9+
| [简体中文](https://github.com/yeasy/docker_practice) | [阅读](https://vuepress.mirror.docker-practice.com/) |
1010

1111
[Docker](https://www.docker.com) 是个划时代的开源项目,它彻底释放了计算虚拟化的威力,极大提高了应用的维护效率,降低了云计算应用开发的成本!使用 Docker,可以让应用的部署、测试和分发都变得前所未有的高效和轻松!
1212

@@ -52,7 +52,9 @@ Docker 自身仍在快速发展中,生态环境也在蓬勃成长。建议初
5252
* QQ 群 VII (已满):252403484
5353
* QQ 群 VIII(已满):544818750
5454
* QQ 群 IX (已满):571502246
55-
* QQ 群 X (可加):145983035
55+
* QQ 群 X (已满):145983035
56+
57+
建议前往 [Github Discussions](https://github.com/yeasy/docker_practice/discussions) 进行技术交流。
5658

5759
>如果有容器技术相关的疑问,请通过 [Issues](https://github.com/yeasy/docker_practice/issues/new/choose) 来提出。
5860

SUMMARY.md

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
* [Docker 简介](introduction/README.md)
77
* [什么是 Docker](introduction/what.md)
88
* [为什么要用 Docker](introduction/why.md)
9+
910
* [基本概念](basic_concept/README.md)
1011
* [镜像](basic_concept/image.md)
1112
* [容器](basic_concept/container.md)
@@ -18,7 +19,7 @@
1819
* [Raspberry Pi](install/raspberry-pi.md)
1920
* [Linux 离线安装](install/offline.md)
2021
* [macOS](install/mac.md)
21-
* [Windows 10](install/windows.md)
22+
* [Windows 10/11](install/windows.md)
2223
* [镜像加速器](install/mirror.md)
2324
* [开启实验特性](install/experimental.md)
2425
* [使用镜像](image/README.md)
@@ -63,24 +64,14 @@
6364
* [数据卷](data_management/volume.md)
6465
* [挂载主机目录](data_management/bind-mounts.md)
6566
* [网络配置](network/README.md)
66-
* [快速配置指南](network/quick_guide.md)
67-
* [外部访问容器](network/port_mapping.md)
68-
* [容器访问控制](network/access_control.md)
69-
* [端口映射实现](network/port_mapping.md)
70-
* [配置 docker0 网桥](network/docker0.md)
71-
* [自定义网桥](network/bridge.md)
72-
* [编辑网络配置文件](network/config_file.md)
7367
* [配置 DNS](network/dns.md)
74-
* [配置 HTTP/HTTPS 网络代理](network/http_https_proxy.md)
75-
* [工具和示例](network/example.md)
76-
* [实例:创建一个点到点连接](network/ptp.md)
68+
* [外部访问容器](network/port_mapping.md)
7769
* [Docker Buildx](buildx/README.md)
7870
* [BuildKit](buildx/buildkit.md)
7971
* [使用 buildx 构建镜像](buildx/buildx.md)
8072
* [使用 buildx 构建多种系统架构支持的 Docker 镜像](buildx/multi-arch-images.md)
8173
* [Docker Compose](compose/README.md)
8274
* [简介](compose/introduction.md)
83-
* [Compose v2](compose/v2.md)
8475
* [安装与卸载](compose/install.md)
8576
* [使用](compose/usage.md)
8677
* [命令说明](compose/commands.md)

appendix/best_practices.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ RUN apt-get update && apt-get install -y \
118118
`apt-get update` 放在一条单独的 `RUN` 声明中会导致缓存问题以及后续的 `apt-get install` 失败。比如,假设你有一个 `Dockerfile` 文件:
119119

120120
```docker
121-
FROM ubuntu:18.04
121+
FROM ubuntu:24.04
122122
123123
RUN apt-get update
124124
@@ -128,7 +128,7 @@ RUN apt-get install -y curl
128128
构建镜像后,所有的层都在 Docker 的缓存中。假设你后来又修改了其中的 `apt-get install` 添加了一个包:
129129

130130
```docker
131-
FROM ubuntu:18.04
131+
FROM ubuntu:24.04
132132
133133
RUN apt-get update
134134

appendix/repo/mongodb.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,29 @@
1414
$ docker run --name mongo -d mongo
1515
```
1616

17-
使用其他应用连接到容器,可以用
17+
使用其他应用连接到容器,首先创建网络
18+
```bash
19+
$ docker network create my-mongo-net
20+
```
21+
22+
然后启动 MongoDB 容器
23+
```bash
24+
$ docker run --name some-mongo -d --network my-mongo-net mongo
25+
```
1826

27+
最后启动应用容器
1928
```bash
20-
$ docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
29+
$ docker run --name some-app -d --network my-mongo-net application-that-uses-mongo
2130
```
2231

2332
或者通过 `mongo`
2433

2534
```bash
2635
$ docker run -it --rm \
27-
--link some-mongo:mongo \
36+
--network my-mongo-net \
2837
mongo \
29-
sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
38+
sh -c 'exec mongo "some-mongo:27017/test"'
39+
```
3040
```
3141
3242
## Dockerfile

appendix/repo/mysql.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,19 +16,31 @@ $ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
1616

1717
之后就可以使用其它应用来连接到该容器。
1818

19+
首先创建网络
1920
```bash
20-
$ docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
21+
$ docker network create my-mysql-net
22+
```
23+
24+
然后启动 MySQL 容器
25+
```bash
26+
$ docker run --name some-mysql -d --network my-mysql-net -e MYSQL_ROOT_PASSWORD=mysecretpassword mysql
27+
```
28+
29+
最后启动应用容器
30+
```bash
31+
$ docker run --name some-app -d --network my-mysql-net application-that-uses-mysql
2132
```
2233

2334
或者通过 `mysql` 命令行连接。
2435

2536
```bash
2637
$ docker run -it --rm \
27-
--link some-mysql:mysql \
38+
--network my-mysql-net \
2839
mysql \
29-
sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
40+
sh -c 'exec mysql -hsome-mysql -P3306 -uroot -pmysecretpassword'
3041
```
3142

43+
3244
## Dockerfile
3345

3446
请到 https://github.com/docker-library/docs/tree/master/mysql 查看

appendix/repo/redis.md

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,28 @@ $ docker run --name some-redis -d -p 6379:6379 redis redis-server --appendonly y
2222

2323
默认数据存储位置在 `VOLUME/data`。可以使用 `--volumes-from some-volume-container``-v /docker/host/dir:/data` 将数据存放到本地。
2424

25-
使用其他应用连接到容器,可以用
25+
使用其他应用连接到容器,首先创建网络
26+
```bash
27+
$ docker network create my-redis-net
28+
```
29+
30+
然后启动 redis 容器
31+
```bash
32+
$ docker run --name some-redis -d --network my-redis-net redis
33+
```
2634

35+
最后启动应用容器
2736
```bash
28-
$ docker run --name some-app --link some-redis:redis -d application-that-uses-redis
37+
$ docker run --name some-app -d --network my-redis-net application-that-uses-redis
2938
```
3039

3140
或者通过 `redis-cli`
3241

3342
```bash
3443
$ docker run -it --rm \
35-
--link some-redis:redis \
44+
--network my-redis-net \
3645
redis \
37-
sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
46+
sh -c 'exec redis-cli -h some-redis'
3847
```
3948

4049
## Dockerfile

appendix/repo/wordpress.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,28 @@
1010

1111
启动容器需要 MySQL 的支持,默认端口为 `80`
1212

13+
首先创建网络
1314
```bash
14-
$ docker run --name some-wordpress --link some-mysql:mysql -d wordpress
15+
$ docker network create my-wordpress-net
16+
```
17+
18+
启动 MySQL 容器
19+
```bash
20+
$ docker run --name some-mysql -d --network my-wordpress-net -e MYSQL_ROOT_PASSWORD=mysecretpassword mysql
21+
```
22+
23+
启动 WordPress 容器
24+
```bash
25+
$ docker run --name some-wordpress -d --network my-wordpress-net -e WORDPRESS_DB_HOST=some-mysql -e WORDPRESS_DB_PASSWORD=mysecretpassword wordpress
1526
```
1627

1728
启动 WordPress 容器时可以指定的一些环境变量包括:
1829

19-
* `WORDPRESS_DB_USER` 缺省为 `root`
20-
* `WORDPRESS_DB_PASSWORD` 缺省为连接 mysql 容器的环境变量 `MYSQL_ROOT_PASSWORD` 的值
21-
* `WORDPRESS_DB_NAME` 缺省为 `wordpress`
30+
* `WORDPRESS_DB_HOST`: MySQL 服务的主机名
31+
* `WORDPRESS_DB_USER`: MySQL 数据库的用户名
32+
* `WORDPRESS_DB_PASSWORD`: MySQL 数据库的密码
33+
* `WORDPRESS_DB_NAME`: WordPress 要使用的数据库名
34+
2235

2336
## Dockerfile
2437

appendix/resources.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
## 技术交流
2121

2222
* Docker 邮件列表: https://groups.google.com/forum/#!forum/docker-user
23-
* Docker 的 IRC 频道:https://chat.freenode.net#docker
23+
* Docker 社区 Slack:https://dockercommunity.slack.com/
24+
* Docker Community Discord: https://discord.gg/docker
2425
* Docker 的 Twitter 主页:https://twitter.com/docker
2526

2627
## 其它

basic_concept/README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
# 基本概念
22

3-
**Docker** 包括三个基本概念
4-
* **镜像**`Image`
5-
* **容器**`Container`
6-
* **仓库**`Repository`
3+
**Docker** 包括三个基本概念:
4+
5+
* **镜像**`Image`):Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。
6+
* **容器**`Container`):镜像(`Image`)和容器(`Container`)的关系,就像是面向对象程序设计中的 ```实例` 一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
7+
* **仓库**`Repository`):镜像构建完成后,可以很容易的在当前宿主机上运行,但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。
78

89
理解了这三个概念,就理解了 **Docker** 的整个生命周期。

basic_concept/image.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Docker 镜像
22

3-
我们都知道,操作系统分为 **内核****用户空间**。对于 `Linux` 而言,内核启动后,会挂载 `root` 文件系统为其提供用户空间支持。而 **Docker 镜像**`Image`),就相当于是一个 `root` 文件系统。比如官方镜像 `ubuntu:18.04` 就包含了完整的一套 Ubuntu 18.04 最小系统的 `root` 文件系统。
3+
我们都知道,操作系统分为 **内核****用户空间**。对于 `Linux` 而言,内核启动后,会挂载 `root` 文件系统为其提供用户空间支持。而 **Docker 镜像**`Image`),就相当于是一个 `root` 文件系统。比如官方镜像 `ubuntu:24.04` 就包含了完整的一套 Ubuntu 24.04 最小系统的 `root` 文件系统。
44

55
**Docker 镜像** 是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像 **不包含** 任何动态数据,其内容在构建之后也不会被改变。
66

0 commit comments

Comments
 (0)