translate repository into traditional chinese

This commit is contained in:
a504082002
2014-11-19 01:00:04 +08:00
parent 2c7762fecc
commit 47d4f30697
4 changed files with 74 additions and 74 deletions

View File

@@ -1,10 +1,10 @@
# 仓库
# 倉庫
仓库Repository是集中存放像的地方。
倉庫Repository是集中存放像的地方。
容易混淆的概念是注册服务Registry实际上注册服务器是管理仓库的具体服务器,每个服务器上可以有多个仓库,而每个仓库下面有多个镜像。从这方面来说,仓库可以被认为是一个具体的项目或目。例如对于仓库地址 `dl.dockerpool.com/ubuntu` 来说`dl.dockerpool.com`注册服务器地址,`ubuntu`仓库名。
容易混淆的概念是註冊服務Registry實際上註冊服務器是管理倉庫的具體服務器,每個服務器上可以有多個倉庫,而每個倉庫下面有多個鏡像。從這方面來說,倉庫可以被認為是一個具體的項目或目。例如對於倉庫地址 `dl.dockerpool.com/ubuntu` 來說`dl.dockerpool.com`註冊服務器地址,`ubuntu`倉庫名。
大部分候,不需要严格区分这两者的概念。
大部分候,不需要嚴格區分這兩者的概念。

View File

@@ -1,28 +1,28 @@
## 仓库配置文件
Docker 的 Registry 利用配置文件提供了一些仓库的模板flavor可以直接使用它们来进行开发或生部署。
## 倉庫配置文件
Docker 的 Registry 利用配置文件提供了一些倉庫的模板flavor可以直接使用它們來進行開發或生部署。
### 模板
`config_sample.yml` 文件中,可以看到一些成的模板段:
* `common`:基配置
* `local`:存储数据到本地文件系
* `s3`:存储数据到 AWS S3 中
`config_sample.yml` 文件中,可以看到一些成的模板段:
* `common`:基配置
* `local`:存儲數據到本地文件系
* `s3`:存儲數據到 AWS S3 中
* `dev`:使用 `local` 模板的基本配置
* `test`单元测试使用
* `prod`:生产环境配置基本上跟s3配置似)
* `gcs`:存储数据到 Google 的云存储
* `swift`:存储数据到 OpenStack Swift 服
* `glance`:存储数据到 OpenStack Glance 服,本地文件系统为后备
* `glance-swift`:存储数据到 OpenStack Glance 服Swift 为后备
* `elliptics`:存储数据到 Elliptics key/value 存
* `test`單元測試使用
* `prod`:生產環境配置基本上跟s3配置似)
* `gcs`:存儲數據到 Google 的雲存儲
* `swift`:存儲數據到 OpenStack Swift 服
* `glance`:存儲數據到 OpenStack Glance 服,本地文件系統為後備
* `glance-swift`:存儲數據到 OpenStack Glance 服Swift 為後備
* `elliptics`:存儲數據到 Elliptics key/value 存
也可以添加自定的模版段。
也可以添加自定的模版段。
认情况下使用的模板是 `dev`,要使用某模板作为默认值,可以添加 `SETTINGS_FLAVOR`环境变量中,例如
認情況下使用的模板是 `dev`,要使用某模板作為默認值,可以添加 `SETTINGS_FLAVOR`環境變量中,例如
```
export SETTINGS_FLAVOR=dev
```
另外,配置文件中支持从环境变量中加值,法格式 `_env:VARIABLENAME[:DEFAULT]`
另外,配置文件中支持從環境變量中加值,法格式 `_env:VARIABLENAME[:DEFAULT]`
### 示例配置
```
@@ -54,4 +54,4 @@ test:
storage_path: /tmp/tmpdockertmp
```
### 选项
### 選項

View File

@@ -1,14 +1,14 @@
## Docker Hub
目前 Docker 官方维护了一公共仓库 [Docker Hub](https://hub.docker.com/),其中已包括了超 15,000 的像。大部分需求,都可以通在 Docker Hub 中直接下载镜像来实现
目前 Docker 官方維護了一公共倉庫 [Docker Hub](https://hub.docker.com/),其中已包括了超 15,000 的像。大部分需求,都可以通在 Docker Hub 中直接下載鏡像來實現
### 登
可以通过执`docker login` 命令来输入用名、密码和邮箱来完成注册和登
注册成功,本地用户目录`.dockercfg`保存用户的认证信息。
### 登
可以通過執`docker login` 命令來輸入用名、密碼和郵箱來完成註冊和登
註冊成功,本地用戶目錄`.dockercfg`保存用戶的認證信息。
### 基本操作
户无需登即可通 `docker search` 命令查找官方仓库中的像,利用 `docker pull` 命令来将它下到本地。
戶無需登即可通 `docker search` 命令查找官方倉庫中的像,利用 `docker pull` 命令來將它下到本地。
例如以 centos 为关键词进行搜索:
例如以 centos 為關鍵詞進行搜索:
```
$ sudo docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
@@ -19,16 +19,16 @@ saltstack/centos-6-minimal
tutum/centos-6.4 DEPRECATED. Use tutum/centos:6.4 instead. ... 5 [OK]
...
```
可以看到返回了很多包含关键字的像,其中包括像名字、描述、星(表示该镜像的受迎程度)、是否官方建、是否自动创建。
官方的镜像说明是官方项目组创建和维护automated 源允许用户验证镜像的源和容。
可以看到返回了很多包含關鍵字的像,其中包括像名字、描述、星(表示該鏡像的受迎程度)、是否官方建、是否自動創建。
官方的鏡像說明是官方項目組創建和維護automated 源允許用戶驗證鏡像的源和容。
是否是官方提供,可将镜像资源分为两类
种是类似 centos 这样的基础镜像,被称为基础或根像。些基础镜像是由 Docker 公司建、验证、支持、提供。这样的镜像往往使用单个单词作为名字。
有一种类型,比如 `tianon/centos` 像,它是由 Docker 的用户创建并维护的,往往有用户名称前缀。可以通过前缀 `user_name/` 指定使用某个用户提供的像,比如 tianon 用
是否是官方提供,可將鏡像資源分為兩類
種是類似 centos 這樣的基礎鏡像,被稱為基礎或根像。些基礎鏡像是由 Docker 公司建、驗證、支持、提供。這樣的鏡像往往使用單個單詞作為名字。
有一種類型,比如 `tianon/centos` 像,它是由 Docker 的用戶創建並維護的,往往有用戶名稱前綴。可以通過前綴 `user_name/` 指定使用某個用戶提供的像,比如 tianon 用
另外,在查找的候通 `-s N` 参数可以指定仅显示评价为 `N` 星以上的像。
另外,在查找的候通 `-s N` 參數可以指定僅顯示評價為 `N` 星以上的像。
官方 centos 像到本地。
官方 centos 像到本地。
```
$ sudo docker pull centos
Pulling repository centos
@@ -37,19 +37,19 @@ Pulling repository centos
511136ea3c5a: Download complete
7064731afe90: Download complete
```
也可以在登录后通过 `docker push` 命令来将镜像推送到 Docker Hub。
也可以在登錄後通過 `docker push` 命令來將鏡像推送到 Docker Hub。
### 自动创
动创Automated Builds功能对于需要常升级镜像内程序来说,十分方便。
候,用户创建了像,安了某个软件,如果软件发布新版本需要手更新像。。
### 自動創
動創Automated Builds功能對於需要常升級鏡像內程序來說,十分方便。
候,用戶創建了像,安了某個軟件,如果軟件發布新版本需要手更新像。。
而自动创建允许用户通过 Docker Hub 指定跟踪一个目标网站(目前支持 [GitHub](github.org) 或 [BitBucket](bitbucket.org))上的目,一旦项目发生新的提交,则自动执行创建。
而自動創建允許用戶通過 Docker Hub 指定跟蹤一個目標網站(目前支持 [GitHub](github.org) 或 [BitBucket](bitbucket.org))上的目,一旦項目發生新的提交,則自動執行創建。
要配置自动创建,包括如下的步
* 创建并登陆 Docker Hub以及目标网站;
* 在目标网站中连接帐户到 Docker Hub
* 在 Docker Hub 中 [配置一个自动创](https://registry.hub.docker.com/builds/add/)
* 取一个目标网站中的目(需要含 Dockerfile和分支
* 指定 Dockerfile 的位置,提交建。
要配置自動創建,包括如下的步
* 創建並登陸 Docker Hub以及目標網站;
* 在目標網站中連接帳戶到 Docker Hub
* 在 Docker Hub 中 [配置一個自動創](https://registry.hub.docker.com/builds/add/)
* 取一個目標網站中的目(需要含 Dockerfile和分支
* 指定 Dockerfile 的位置,提交建。
,可以 在Docker Hub 的 [动创建页](https://registry.hub.docker.com/builds/) 中跟每次建的状态
,可以 在Docker Hub 的 [動創建頁](https://registry.hub.docker.com/builds/) 中跟每次建的狀態

View File

@@ -1,18 +1,18 @@
## 私有仓库
## 私有倉庫
候使用 Docker Hub 这样的公共仓库可能不方便,用可以建一本地仓库供私人使用。
候使用 Docker Hub 這樣的公共倉庫可能不方便,用可以建一本地倉庫供私人使用。
节介绍如何使用本地仓库
節介紹如何使用本地倉庫
`docker-registry` 是官方提供的工具,可以用于构建私有的镜像仓库
### 安装运行 docker-registry
#### 容器
在安了 Docker ,可以通过获取官方 registry 镜像来运行。
`docker-registry` 是官方提供的工具,可以用於構建私有的鏡像倉庫
### 安裝運行 docker-registry
#### 容器
在安了 Docker ,可以通過獲取官方 registry 鏡像來運行。
```
$ sudo docker run -d -p 5000:5000 registry
```
这将使用官方的 registry 镜像来启动本地的私有仓库
可以通指定参数来配置私有仓库位置,例如配置像存到 Amazon S3 服
這將使用官方的 registry 鏡像來啟動本地的私有倉庫
可以通指定參數來配置私有倉庫位置,例如配置像存到 Amazon S3 服
```
$ sudo docker run \
-e SETTINGS_FLAVOR=s3 \
@@ -24,18 +24,18 @@ $ sudo docker run \
-p 5000:5000 \
registry
````
此外,可以指定本地路(如 `/home/user/registry-conf` )下的配置文件。
此外,可以指定本地路(如 `/home/user/registry-conf` )下的配置文件。
```
$ sudo docker run -d -p 5000:5000 -v /home/user/registry-conf:/registry-conf -e DOCKER_REGISTRY_CONFIG=/registry-conf/config.yml registry
```
认情况下,仓库会被创建在容器的 `/tmp/registry` 下。可以通 `-v` 参数来将镜像文件存放在本地的指定路
例如下面的例子将上传的镜像放到 `/opt/data/registry` 目
認情況下,倉庫會被創建在容器的 `/tmp/registry` 下。可以通 `-v` 參數來將鏡像文件存放在本地的指定路
例如下面的例子將上傳的鏡像放到 `/opt/data/registry` 目
```
$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
```
#### 本地安
对于 Ubuntu 或 CentOS 等行版,可以直接通源安
#### 本地安
對於 Ubuntu 或 CentOS 等行版,可以直接通源安
* Ubuntu
```
$ sudo apt-get install -y build-essential python-dev libevent-dev python-pip liblzma-dev
@@ -47,18 +47,18 @@ $ sudo yum install -y python-devel libevent-devel python-pip gcc xz-devel
$ sudo python-pip install docker-registry
```
也可以 [docker-registry](https://github.com/docker/docker-registry) 目下载源码进行安
也可以 [docker-registry](https://github.com/docker/docker-registry) 目下載源碼進行安
```
$ sudo apt-get install build-essential python-dev libevent-dev python-pip libssl-dev liblzma-dev libffi-dev
$ git clone https://github.com/docker/docker-registry.git
$ cd docker-registry
$ sudo python setup.py install
```
修改配置文件,主要修改 dev 模板段的 `storage_path` 到本地的存储仓库的路
修改配置文件,主要修改 dev 模板段的 `storage_path` 到本地的存儲倉庫的路
```
$ cp config/config_sample.yml config/config.yml
```
后启动 Web 服
後啟動 Web 服
```
$ sudo gunicorn -c contrib/gunicorn.py docker_registry.wsgi:application
```
@@ -66,14 +66,14 @@ $ sudo gunicorn -c contrib/gunicorn.py docker_registry.wsgi:application
```
$ sudo gunicorn --access-logfile - --error-logfile - -k gevent -b 0.0.0.0:5000 -w 4 --max-requests 100 docker_registry.wsgi:application
```
使用访问本地的 5000 端口,看到出 docker-registry 的版本信息说明运行成功。
使用訪問本地的 5000 端口,看到出 docker-registry 的版本信息說明運行成功。
*`config/config_sample.yml` 文件是示例配置文件。
*`config/config_sample.yml` 文件是示例配置文件。
###在私有仓库上传、下、搜索
建好私有仓库之后,就可以使用 `docker tag` 来标记一个镜像,然推送它到仓库,别的机器上就可以下载下来了。例如私有仓库地址 `192.168.7.26:5000`。
###在私有倉庫上傳、下、搜索
建好私有倉庫之後,就可以使用 `docker tag` 來標記一個鏡像,然推送它到倉庫,別的機器上就可以下載下來了。例如私有倉庫地址 `192.168.7.26:5000`。
先在本查看已有的像。
先在本查看已有的像。
```
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
@@ -81,7 +81,7 @@ ubuntu latest ba5877dc9bec 6 week
ubuntu 14.04 ba5877dc9bec 6 weeks ago 192.7 MB
```
使用`docker tag` `ba58` 这个镜像标记为 `192.168.7.26:5000/test`(格式 `docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]`)。
使用`docker tag` `ba58` 這個鏡像標記為 `192.168.7.26:5000/test`(格式 `docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]`)。
```
$ sudo docker tag ba58 192.168.7.26:5000/test
root ~ # docker images
@@ -90,7 +90,7 @@ ubuntu 14.04 ba5877dc9bec 6 week
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
192.168.7.26:5000/test latest ba5877dc9bec 6 weeks ago 192.7 MB
```
使用 `docker push` 上传标记的镜像。
使用 `docker push` 上傳標記的鏡像。
```
$ sudo docker push 192.168.7.26:5000/test
The push refers to a repository [192.168.7.26:5000/test] (len: 1)
@@ -104,14 +104,14 @@ Image 2318d26665ef already pushed, skipping
Image ba5877dc9bec already pushed, skipping
Pushing tag for rev [ba5877dc9bec] on {http://192.168.7.26:5000/v1/repositories/test/tags/latest}
```
用 curl 查看仓库中的像。
用 curl 查看倉庫中的像。
```
$ curl http://192.168.7.26:5000/v1/search
{"num_results": 7, "query": "", "results": [{"description": "", "name": "library/miaxis_j2ee"}, {"description": "", "name": "library/tomcat"}, {"description": "", "name": "library/ubuntu"}, {"description": "", "name": "library/ubuntu_office"}, {"description": "", "name": "library/desktop_ubu"}, {"description": "", "name": "dockerfile/ubuntu"}, {"description": "", "name": "library/test"}]}
```
这里可以看到 `{"description": "", "name": "library/test"}`,表明像已被成功上了。
這裏可以看到 `{"description": "", "name": "library/test"}`,表明像已被成功上了。
在可以到另外一台机器去下载这个镜像。
在可以到另外一臺機器去下載這個鏡像。
```
$ sudo docker pull 192.168.7.26:5000/test
Pulling repository 192.168.7.26:5000/test
@@ -126,7 +126,7 @@ REPOSITORY TAG IMAGE ID CREAT
192.168.7.26:5000/test latest ba5877dc9bec 6 weeks ago 192.7 MB
```
可以使用 [这个脚本](https://github.com/yeasy/docker_practice/raw/master/_local/push_images.sh) 批量上本地的像到注册服务器中,默是本地注册服务器 `127.0.0.1:5000`。例如:
可以使用 [這個腳本](https://github.com/yeasy/docker_practice/raw/master/_local/push_images.sh) 批量上本地的像到註冊服務器中,默是本地註冊服務器 `127.0.0.1:5000`。例如:
```
$ wget https://github.com/yeasy/docker_practice/raw/master/_local/push_images.sh; sudo chmod a+x push_images.sh
$ ./push_images.sh ubuntu:latest centos:centos7