mirror of
https://github.com/yeasy/docker_practice.git
synced 2024-11-16 11:33:40 +00:00
translate appendix_repo and appendix_resources into traditional chinese
This commit is contained in:
parent
0a084995ce
commit
c56ccb9c8a
@ -1,2 +1,2 @@
|
|||||||
# 常见仓库介绍
|
# 常見倉庫介紹
|
||||||
本章将介绍常见的一些仓库和镜像的功能,使用方法和生成它们的 Dockerfile 等。包括 Ubuntu、CentOS、MySQL、MongoDB、Redis、Nginx、Wordpress、Node.js 等。
|
本章將介紹常見的一些倉庫和鏡像的功能,使用方法和生成它們的 Dockerfile 等。包括 Ubuntu、CentOS、MySQL、MongoDB、Redis、Nginx、Wordpress、Node.js 等。
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
## [CentOS](https://registry.hub.docker.com/_/centos/)
|
## [CentOS](https://registry.hub.docker.com/_/centos/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[CentOS](https://en.wikipedia.org/wiki/CentOS) 是流行的 Linux 发行版,其软件包大多跟 RedHat 系列保持一致。
|
[CentOS](https://en.wikipedia.org/wiki/CentOS) 是流行的 Linux 發行版,其軟件包大多跟 RedHat 系列保持一致。
|
||||||
该仓库提供了 CentOS 从 5 ~ 7 各个版本的镜像。
|
該倉庫提供了 CentOS 從 5 ~ 7 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
默认会启动一个最小化的 CentOS 环境。
|
默認會啟動一個最小化的 CentOS 環境。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-centos -i -t centos bash
|
$ sudo docker run --name some-centos -i -t centos bash
|
||||||
bash-4.2#
|
bash-4.2#
|
||||||
|
@ -1,20 +1,20 @@
|
|||||||
## [MongoDB](https://registry.hub.docker.com/_/mongo/)
|
## [MongoDB](https://registry.hub.docker.com/_/mongo/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[MongoDB](https://en.wikipedia.org/wiki/MongoDB) 是开源的 NoSQL 数据库实现。
|
[MongoDB](https://en.wikipedia.org/wiki/MongoDB) 是開源的 NoSQL 數據庫實現。
|
||||||
该仓库提供了 MongoDB 2.2 ~ 2.7 各个版本的镜像。
|
該倉庫提供了 MongoDB 2.2 ~ 2.7 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
默认会在 `27017` 端口启动数据库。
|
默認會在 `27017` 端口啟動數據庫。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-mongo -d mongo
|
$ sudo docker run --name some-mongo -d mongo
|
||||||
```
|
```
|
||||||
|
|
||||||
使用其他应用连接到容器,可以用
|
使用其他應用連接到容器,可以用
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
$ sudo docker run --name some-app --link some-mongo:mongo -d application-that-uses-mongo
|
||||||
```
|
```
|
||||||
或者通过 `mongo`
|
或者通過 `mongo`
|
||||||
```
|
```
|
||||||
$ sudo docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
$ sudo docker run -it --link some-mongo:mongo --rm mongo sh -c 'exec mongo "$MONGO_PORT_27017_TCP_ADDR:$MONGO_PORT_27017_TCP_PORT/test"'
|
||||||
```
|
```
|
||||||
|
@ -1,19 +1,19 @@
|
|||||||
## [MySQL](https://registry.hub.docker.com/_/mysql/)
|
## [MySQL](https://registry.hub.docker.com/_/mysql/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[MySQL](https://en.wikipedia.org/wiki/MySQL) 是开源的关系数据库实现。
|
[MySQL](https://en.wikipedia.org/wiki/MySQL) 是開源的關系數據庫實現。
|
||||||
该仓库提供了 MySQL 各个版本的镜像,包括 5.6 系列、5.7 系列等。
|
該倉庫提供了 MySQL 各個版本的鏡像,包括 5.6 系列、5.7 系列等。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
默认会在 `3306` 端口启动数据库。
|
默認會在 `3306` 端口啟動數據庫。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
$ sudo docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mysecretpassword -d mysql
|
||||||
```
|
```
|
||||||
之后就可以使用其它应用来连接到该容器。
|
之後就可以使用其它應用來連接到該容器。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
$ sudo docker run --name some-app --link some-mysql:mysql -d application-that-uses-mysql
|
||||||
```
|
```
|
||||||
或者通过 `mysql`。
|
或者通過 `mysql`。
|
||||||
```
|
```
|
||||||
$ sudo docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
$ sudo docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
|
||||||
```
|
```
|
||||||
|
@ -1,34 +1,34 @@
|
|||||||
## [Nginx](https://registry.hub.docker.com/_/nginx/)
|
## [Nginx](https://registry.hub.docker.com/_/nginx/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[Nginx](https://en.wikipedia.org/wiki/Nginx) 是开源的高效的 Web 服务器实现,支持 HTTP、HTTPS、SMTP、POP3、IMAP 等协议。
|
[Nginx](https://en.wikipedia.org/wiki/Nginx) 是開源的高效的 Web 服務器實現,支持 HTTP、HTTPS、SMTP、POP3、IMAP 等協議。
|
||||||
该仓库提供了 Nginx 1.0 ~ 1.7 各个版本的镜像。
|
該倉庫提供了 Nginx 1.0 ~ 1.7 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
下面的命令将作为一个静态页面服务器启动。
|
下面的命令將作為一個靜態頁面服務器啟動。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
$ sudo docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
|
||||||
```
|
```
|
||||||
用户也可以不使用这种映射方式,通过利用 Dockerfile 来直接将静态页面内容放到镜像中,内容为
|
用戶也可以不使用這種映射方式,通過利用 Dockerfile 來直接將靜態頁面內容放到鏡像中,內容為
|
||||||
```
|
```
|
||||||
FROM nginx
|
FROM nginx
|
||||||
COPY static-html-directory /usr/share/nginx/html
|
COPY static-html-directory /usr/share/nginx/html
|
||||||
```
|
```
|
||||||
之后生成新的镜像,并启动一个容器。
|
之後生成新的鏡像,並啟動一個容器。
|
||||||
```
|
```
|
||||||
$ sudo docker build -t some-content-nginx .
|
$ sudo docker build -t some-content-nginx .
|
||||||
$ sudo docker run --name some-nginx -d some-content-nginx
|
$ sudo docker run --name some-nginx -d some-content-nginx
|
||||||
```
|
```
|
||||||
开放端口,并映射到本地的 `8080` 端口。
|
開放端口,並映射到本地的 `8080` 端口。
|
||||||
```
|
```
|
||||||
sudo docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
sudo docker run --name some-nginx -d -p 8080:80 some-content-nginx
|
||||||
```
|
```
|
||||||
|
|
||||||
Nginx的默认配置文件路径为 `/etc/nginx/nginx.conf`,可以通过映射它来使用本地的配置文件,例如
|
Nginx的默認配置文件路徑為 `/etc/nginx/nginx.conf`,可以通過映射它來使用本地的配置文件,例如
|
||||||
```
|
```
|
||||||
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
|
||||||
```
|
```
|
||||||
使用配置文件时,为了在容器中正常运行,需要保持 `daemon off;`。
|
使用配置文件時,為了在容器中正常運行,需要保持 `daemon off;`。
|
||||||
|
|
||||||
### Dockerfile
|
### Dockerfile
|
||||||
* [1 ~ 1.7 版本](https://github.com/nginxinc/docker-nginx/blob/3713a0157083eb4776e71f5a5aef4b2a5bc03ab1/Dockerfile)
|
* [1 ~ 1.7 版本](https://github.com/nginxinc/docker-nginx/blob/3713a0157083eb4776e71f5a5aef4b2a5bc03ab1/Dockerfile)
|
||||||
|
@ -1,23 +1,23 @@
|
|||||||
## [Node.js](https://registry.hub.docker.com/_/node/)
|
## [Node.js](https://registry.hub.docker.com/_/node/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[Node.js](https://en.wikipedia.org/wiki/Node.js)是基于 JavaScript 的可扩展服务端和网络软件开发平台。
|
[Node.js](https://en.wikipedia.org/wiki/Node.js)是基於 JavaScript 的可擴展服務端和網絡軟件開發平臺。
|
||||||
该仓库提供了 Node.js 0.8 ~ 0.11 各个版本的镜像。
|
該倉庫提供了 Node.js 0.8 ~ 0.11 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
在项目中创建一个 Dockerfile。
|
在項目中創建一個 Dockerfile。
|
||||||
```
|
```
|
||||||
FROM node:0.10-onbuild
|
FROM node:0.10-onbuild
|
||||||
# replace this with your application's default port
|
# replace this with your application's default port
|
||||||
EXPOSE 8888
|
EXPOSE 8888
|
||||||
```
|
```
|
||||||
然后创建镜像,并启动容器
|
然後創建鏡像,並啟動容器
|
||||||
```
|
```
|
||||||
$ sudo docker build -t my-nodejs-app
|
$ sudo docker build -t my-nodejs-app
|
||||||
$ sudo docker run -it --rm --name my-running-app my-nodejs-app
|
$ sudo docker run -it --rm --name my-running-app my-nodejs-app
|
||||||
```
|
```
|
||||||
|
|
||||||
也可以直接运行一个简单容器。
|
也可以直接運行一個簡單容器。
|
||||||
```
|
```
|
||||||
$ sudo docker run -it --rm --name my-running-script -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
$ sudo docker run -it --rm --name my-running-script -v "$(pwd)":/usr/src/myapp -w /usr/src/myapp node:0.10 node your-daemon-or-script.js
|
||||||
```
|
```
|
||||||
|
@ -1,25 +1,25 @@
|
|||||||
## [Redis](https://registry.hub.docker.com/_/redis/)
|
## [Redis](https://registry.hub.docker.com/_/redis/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[Redis](https://en.wikipedia.org/wiki/Redis) 是开源的内存 Key-Value 数据库实现。
|
[Redis](https://en.wikipedia.org/wiki/Redis) 是開源的內存 Key-Value 數據庫實現。
|
||||||
该仓库提供了 Redis 2.6 ~ 2.8.9 各个版本的镜像。
|
該倉庫提供了 Redis 2.6 ~ 2.8.9 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
默认会在 `6379` 端口启动数据库。
|
默認會在 `6379` 端口啟動數據庫。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-redis -d redis
|
$ sudo docker run --name some-redis -d redis
|
||||||
```
|
```
|
||||||
另外还可以启用 [持久存储](http://redis.io/topics/persistence)。
|
另外還可以啟用 [持久存儲](http://redis.io/topics/persistence)。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-redis -d redis redis-server --appendonly yes
|
$ sudo docker run --name some-redis -d redis redis-server --appendonly yes
|
||||||
```
|
```
|
||||||
默认数据存储位置在 `VOLUME/data`。可以使用 `--volumes-from some-volume-container` 或 `-v /docker/host/dir:/data` 将数据存放到本地。
|
默認數據存儲位置在 `VOLUME/data`。可以使用 `--volumes-from some-volume-container` 或 `-v /docker/host/dir:/data` 將數據存放到本地。
|
||||||
|
|
||||||
使用其他应用连接到容器,可以用
|
使用其他應用連接到容器,可以用
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-app --link some-redis:redis -d application-that-uses-redis
|
$ sudo docker run --name some-app --link some-redis:redis -d application-that-uses-redis
|
||||||
```
|
```
|
||||||
或者通过 `redis-cli`
|
或者通過 `redis-cli`
|
||||||
```
|
```
|
||||||
$ sudo docker run -it --link some-redis:redis --rm redis sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
|
$ sudo docker run -it --link some-redis:redis --rm redis sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
|
||||||
```
|
```
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
## [Ubuntu](https://registry.hub.docker.com/_/ubuntu/)
|
## [Ubuntu](https://registry.hub.docker.com/_/ubuntu/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[Ubuntu](https://en.wikipedia.org/wiki/Ubuntu) 是流行的 Linux 发行版,其自带软件版本往往较新一些。
|
[Ubuntu](https://en.wikipedia.org/wiki/Ubuntu) 是流行的 Linux 發行版,其自帶軟件版本往往較新一些。
|
||||||
该仓库提供了 Ubuntu从12.04 ~ 14.10 各个版本的镜像。
|
該倉庫提供了 Ubuntu從12.04 ~ 14.10 各個版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
默认会启动一个最小化的 Ubuntu 环境。
|
默認會啟動一個最小化的 Ubuntu 環境。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-ubuntu -i -t ubuntu
|
$ sudo docker run --name some-ubuntu -i -t ubuntu
|
||||||
root@523c70904d54:/#
|
root@523c70904d54:/#
|
||||||
|
@ -1,19 +1,19 @@
|
|||||||
## [WordPress](https://registry.hub.docker.com/_/wordpress/)
|
## [WordPress](https://registry.hub.docker.com/_/wordpress/)
|
||||||
|
|
||||||
### 基本信息
|
### 基本信息
|
||||||
[WordPress](https://en.wikipedia.org/wiki/WordPress) 是开源的 Blog 和内容管理系统框架,它基于 PhP 和 MySQL。
|
[WordPress](https://en.wikipedia.org/wiki/WordPress) 是開源的 Blog 和內容管理系統框架,它基於 PhP 和 MySQL。
|
||||||
该仓库提供了 WordPress 4.0 版本的镜像。
|
該倉庫提供了 WordPress 4.0 版本的鏡像。
|
||||||
|
|
||||||
### 使用方法
|
### 使用方法
|
||||||
启动容器需要 MySQL 的支持,默认端口为 `80`。
|
啟動容器需要 MySQL 的支持,默認端口為 `80`。
|
||||||
```
|
```
|
||||||
$ sudo docker run --name some-wordpress --link some-mysql:mysql -d wordpress
|
$ sudo docker run --name some-wordpress --link some-mysql:mysql -d wordpress
|
||||||
```
|
```
|
||||||
启动 WordPress 容器时可以指定的一些环境参数包括
|
啟動 WordPress 容器時可以指定的一些環境參數包括
|
||||||
* `-e WORDPRESS_DB_USER=...` 缺省为 “root”
|
* `-e WORDPRESS_DB_USER=...` 缺省為 “root”
|
||||||
* `-e WORDPRESS_DB_PASSWORD=...` 缺省为连接 mysql 容器的环境变量 `MYSQL_ROOT_PASSWORD` 的值
|
* `-e WORDPRESS_DB_PASSWORD=...` 缺省為連接 mysql 容器的環境變量 `MYSQL_ROOT_PASSWORD` 的值
|
||||||
* `-e WORDPRESS_DB_NAME=...` 缺省为 “wordpress”
|
* `-e WORDPRESS_DB_NAME=...` 缺省為 “wordpress”
|
||||||
* `-e WORDPRESS_AUTH_KEY=...`, `-e WORDPRESS_SECURE_AUTH_KEY=...`, `-e WORDPRESS_LOGGED_IN_KEY=...`, `-e WORDPRESS_NONCE_KEY=...`, `-e WORDPRESS_AUTH_SALT=...`, `-e WORDPRESS_SECURE_AUTH_SALT=...`, `-e WORDPRESS_LOGGED_IN_SALT=...`, `-e WORDPRESS_NONCE_SALT=...` 缺省为随机 sha1 串
|
* `-e WORDPRESS_AUTH_KEY=...`, `-e WORDPRESS_SECURE_AUTH_KEY=...`, `-e WORDPRESS_LOGGED_IN_KEY=...`, `-e WORDPRESS_NONCE_KEY=...`, `-e WORDPRESS_AUTH_SALT=...`, `-e WORDPRESS_SECURE_AUTH_SALT=...`, `-e WORDPRESS_LOGGED_IN_SALT=...`, `-e WORDPRESS_NONCE_SALT=...` 缺省為隨機 sha1 串
|
||||||
|
|
||||||
### Dockerfile
|
### Dockerfile
|
||||||
* [4.0 版本](https://github.com/docker-library/wordpress/blob/aee00669e7c43f435f021cb02871bffd63d5677a/Dockerfile)
|
* [4.0 版本](https://github.com/docker-library/wordpress/blob/aee00669e7c43f435f021cb02871bffd63d5677a/Dockerfile)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# 资源链接
|
# 資源鏈接
|
||||||
* Docker 主站点: https://www.docker.io
|
* Docker 主站點: https://www.docker.io
|
||||||
* Docker 注册中心API: http://docs.docker.com/reference/api/registry_api/
|
* Docker 註冊中心API: http://docs.docker.com/reference/api/registry_api/
|
||||||
* Docker Hub API: http://docs.docker.com/reference/api/docker-io_api/
|
* Docker Hub API: http://docs.docker.com/reference/api/docker-io_api/
|
||||||
* Docker 远端应用API: http://docs.docker.com/reference/api/docker_remote_api/
|
* Docker 遠端應用API: http://docs.docker.com/reference/api/docker_remote_api/
|
||||||
* Dockerfile 参考:https://docs.docker.com/reference/builder/
|
* Dockerfile 參考:https://docs.docker.com/reference/builder/
|
||||||
* Dockerfile 最佳实践:https://docs.docker.com/articles/dockerfile_best-practices/
|
* Dockerfile 最佳實踐:https://docs.docker.com/articles/dockerfile_best-practices/
|
||||||
|
Loading…
Reference in New Issue
Block a user