mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-03-15 14:21:22 +00:00
Fix #117
This commit is contained in:
@@ -18,14 +18,14 @@ Docker 的 Registry 利用配置文件提供了一些仓库的模板(flavor)
|
||||
用户也可以添加自定义的模版段。
|
||||
|
||||
默认情况下使用的模板是 `dev`,要使用某个模板作为默认值,可以添加 `SETTINGS_FLAVOR` 到环境变量中,例如
|
||||
```
|
||||
```bash
|
||||
export SETTINGS_FLAVOR=dev
|
||||
```
|
||||
|
||||
另外,配置文件中支持从环境变量中加载值,语法格式为 `_env:VARIABLENAME[:DEFAULT]`。
|
||||
|
||||
### 示例配置
|
||||
```
|
||||
```yml
|
||||
common:
|
||||
loglevel: info
|
||||
search_backend: "_env:SEARCH_BACKEND:"
|
||||
|
||||
@@ -8,12 +8,12 @@
|
||||
### 安装运行 docker-registry
|
||||
#### 容器运行
|
||||
在安装了 Docker 后,可以通过获取官方 registry 镜像来运行。
|
||||
```
|
||||
```bash
|
||||
$ docker run -d -p 5000:5000 registry
|
||||
```
|
||||
这将使用官方的 registry 镜像来启动本地的私有仓库。
|
||||
用户可以通过指定参数来配置私有仓库位置,例如配置镜像存储到 Amazon S3 服务。
|
||||
```
|
||||
```bash
|
||||
$ docker run \
|
||||
-e SETTINGS_FLAVOR=s3 \
|
||||
-e AWS_BUCKET=acme-docker \
|
||||
@@ -25,7 +25,7 @@ $ docker run \
|
||||
registry
|
||||
````
|
||||
此外,还可以指定本地路径(如 `/home/user/registry-conf` )下的配置文件。
|
||||
```
|
||||
```bash
|
||||
$ docker run -d \
|
||||
-p 5000:5000 \
|
||||
-v /home/user/registry-conf:/registry-conf \
|
||||
@@ -34,7 +34,7 @@ $ docker run -d \
|
||||
```
|
||||
默认情况下,仓库会被创建在容器的 `/var/lib/registry `(v1 中是`/tmp/registry`)下。可以通过 `-v` 参数来将镜像文件存放在本地的指定路径。
|
||||
例如下面的例子将上传的镜像放到 `/opt/data/registry` 目录。
|
||||
```
|
||||
```bash
|
||||
$ docker run -d \
|
||||
-p 5000:5000 \
|
||||
-v /opt/data/registry:/var/lib/registry \
|
||||
@@ -45,7 +45,7 @@ $ docker run -d \
|
||||
创建好私有仓库之后,就可以使用 `docker tag` 来标记一个镜像,然后推送它到仓库,别的机器上就可以下载下来了。例如私有仓库地址为 `192.168.7.26:5000`。
|
||||
|
||||
先在本机查看已有的镜像。
|
||||
```
|
||||
```bash
|
||||
$ docker images
|
||||
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
|
||||
ubuntu latest ba5877dc9bec 6 weeks ago 192.7 MB
|
||||
@@ -53,7 +53,7 @@ ubuntu 14.04 ba5877dc9bec 6 week
|
||||
```
|
||||
|
||||
使用`docker tag` 将 `ba58` 这个镜像标记为 `192.168.7.26:5000/test`(格式为 `docker tag IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]`)。
|
||||
```
|
||||
```bash
|
||||
$ docker tag ba58 192.168.7.26:5000/test
|
||||
root ~ # docker images
|
||||
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
|
||||
@@ -62,7 +62,7 @@ ubuntu latest ba5877dc9bec 6 week
|
||||
192.168.7.26:5000/test latest ba5877dc9bec 6 weeks ago 192.7 MB
|
||||
```
|
||||
使用 `docker push` 上传标记的镜像。
|
||||
```
|
||||
```bash
|
||||
$ docker push 192.168.7.26:5000/test
|
||||
The push refers to a repository [192.168.7.26:5000/test] (len: 1)
|
||||
Sending image list
|
||||
@@ -76,14 +76,14 @@ Image ba5877dc9bec already pushed, skipping
|
||||
Pushing tag for rev [ba5877dc9bec] on {http://192.168.7.26:5000/v1/repositories/test/tags/latest}
|
||||
```
|
||||
用 curl 查看仓库中的镜像。
|
||||
```
|
||||
```bash
|
||||
$ 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"}`,表明镜像已经被成功上传了。
|
||||
|
||||
现在可以到另外一台机器去下载这个镜像。
|
||||
```
|
||||
```bash
|
||||
$ docker pull 192.168.7.26:5000/test
|
||||
Pulling repository 192.168.7.26:5000/test
|
||||
ba5877dc9bec: Download complete
|
||||
@@ -104,7 +104,7 @@ REPOSITORY TAG IMAGE ID CREAT
|
||||
```yaml
|
||||
version: "3.4"
|
||||
services:
|
||||
|
||||
|
||||
ubuntu:
|
||||
image: 127.0.0.1:5000/ubuntu:latest
|
||||
centos:
|
||||
|
||||
Reference in New Issue
Block a user