mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-11 04:14:38 +00:00
修正多個用詞
"s/程序/程式/g" "s/性能/效能/g" "s/如下/以下/g" "s/加載/載入/g" "s/獲取/取得/g" "s/服務器/伺服器/g" "s/信息/訊息/g" "s/註釋/註解/g" "s/裏/裡/g" "s/構建/建立/g" "s/配置/設定/g"
This commit is contained in:
@@ -1,14 +1,14 @@
|
||||
## 倉庫配置文件
|
||||
Docker 的 Registry 利用配置文件提供了一些倉庫的模組(flavor),使用者可以直接使用它們來進行開發或生產部署。
|
||||
## 倉庫設定文件
|
||||
Docker 的 Registry 利用設定文件提供了一些倉庫的模組(flavor),使用者可以直接使用它們來進行開發或生產部署。
|
||||
|
||||
### 模組
|
||||
在 `config_sample.yml` 文件中,可以看到一些現成的模組段:
|
||||
* `common`:基礎配置
|
||||
* `common`:基礎設定
|
||||
* `local`:儲存數據到本地文件系統
|
||||
* `s3`:儲存數據到 AWS S3 中
|
||||
* `dev`:使用 `local` 模組的基本配置
|
||||
* `dev`:使用 `local` 模組的基本設定
|
||||
* `test`:單元測試使用
|
||||
* `prod`:生產環境配置(基本上跟s3配置類似)
|
||||
* `prod`:生產環境設定(基本上跟s3設定類似)
|
||||
* `gcs`:儲存數據到 Google 的雲端
|
||||
* `swift`:儲存數據到 OpenStack Swift 服務
|
||||
* `glance`:儲存數據到 OpenStack Glance 服務,本地文件系統為後備
|
||||
@@ -22,9 +22,9 @@ Docker 的 Registry 利用配置文件提供了一些倉庫的模組(flavor)
|
||||
export SETTINGS_FLAVOR=dev
|
||||
```
|
||||
|
||||
另外,配置文件中支持從環境變數中加載值,語法格式為 `_env:VARIABLENAME[:DEFAULT]`。
|
||||
另外,設定文件中支持從環境變數中載入值,語法格式為 `_env:VARIABLENAME[:DEFAULT]`。
|
||||
|
||||
### 範例配置
|
||||
### 範例設定
|
||||
```
|
||||
common:
|
||||
loglevel: info
|
||||
|
||||
@@ -40,15 +40,15 @@ Pulling repository centos
|
||||
使用者也可以在登錄後透過 `docker push` 命令來將映像檔推送到 Docker Hub。
|
||||
|
||||
### 自動建立
|
||||
自動建立(Automated Builds)功能對於需要經常升級映像檔內程序來說,十分方便。
|
||||
自動建立(Automated Builds)功能對於需要經常升級映像檔內程式來說,十分方便。
|
||||
有時候,使用者建立了映像檔,安裝了某個軟體,如果軟體發布新版本則需要手動更新映像檔。。
|
||||
|
||||
而自動建立允許使用者透過 Docker Hub 指定跟蹤一個目標網站(目前支持 [GitHub](github.org) 或 [BitBucket](bitbucket.org))上的項目,一旦項目發生新的提交,則自動執行建立。
|
||||
|
||||
要配置自動建立,包括如下的步驟:
|
||||
要設定自動建立,包括以下的步驟:
|
||||
* 建立並登陸 Docker Hub,以及目標網站;
|
||||
* 在目標網站中連接帳戶到 Docker Hub;
|
||||
* 在 Docker Hub 中 [配置一個自動建立](https://registry.hub.docker.com/builds/add/);
|
||||
* 在 Docker Hub 中 [設定一個自動建立](https://registry.hub.docker.com/builds/add/);
|
||||
* 選取一個目標網站中的項目(需要含 Dockerfile)和分支;
|
||||
* 指定 Dockerfile 的位置,並提交建立。
|
||||
|
||||
|
||||
@@ -4,15 +4,15 @@
|
||||
|
||||
本節介紹如何使用本地倉庫。
|
||||
|
||||
`docker-registry` 是官方提供的工具,可以用於構建私有的映像檔倉庫。
|
||||
`docker-registry` 是官方提供的工具,可以用於建立私有的映像檔倉庫。
|
||||
### 安裝執行 docker-registry
|
||||
#### 容器執行
|
||||
在安裝了 Docker 後,可以透過獲取官方 registry 映像檔來執行。
|
||||
在安裝了 Docker 後,可以透過取得官方 registry 映像檔來執行。
|
||||
```
|
||||
$ sudo docker run -d -p 5000:5000 registry
|
||||
```
|
||||
這將使用官方的 registry 映像檔來啟動本地的私有倉庫。
|
||||
使用者可以透過指定參數來配置私有倉庫位置,例如配置映像檔存儲到 Amazon S3 服務。
|
||||
使用者可以透過指定參數來設定私有倉庫位置,例如設定映像檔存儲到 Amazon S3 服務。
|
||||
```
|
||||
$ sudo docker run \
|
||||
-e SETTINGS_FLAVOR=s3 \
|
||||
@@ -24,12 +24,12 @@ $ 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` 目錄。
|
||||
例以下面的例子將上傳的映像檔放到 `/opt/data/registry` 目錄。
|
||||
```
|
||||
$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
|
||||
```
|
||||
@@ -54,7 +54,7 @@ $ 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
|
||||
```
|
||||
@@ -68,7 +68,7 @@ $ sudo gunicorn --access-logfile - --error-logfile - -k gevent -b 0.0.0.0:5000 -
|
||||
```
|
||||
此時使用連結本地的 5000 端口,看到輸出 docker-registry 的版本訊息說明執行成功。
|
||||
|
||||
*註:`config/config_sample.yml` 文件是範例配置文件。
|
||||
*註:`config/config_sample.yml` 文件是範例設定文件。
|
||||
|
||||
###在私有倉庫上傳、下載、搜索映像檔
|
||||
建立好私有倉庫之後,就可以使用 `docker tag` 來標記一個映像檔,然後推送它到倉庫,別的機器上就可以下載下來了。例如私有倉庫地址為 `192.168.7.26:5000`。
|
||||
@@ -109,7 +109,7 @@ Pushing tag for rev [ba5877dc9bec] on {http://192.168.7.26:5000/v1/repositories/
|
||||
$ 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"}`,表明映像檔已經被成功上傳了。
|
||||
|
||||
現在可以到另外一臺機器去下載這個映像檔。
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user