Rumah pembangunan bahagian belakang tutorial php Docker:私有仓库的搭建

Docker:私有仓库的搭建

Jul 29, 2016 am 09:07 AM
docker key nginx registry

继续,本文描述私有仓库的搭建最简步骤。

概要来说:

  1. 安装registry镜像,启动容器。
  2. CA证书(还有一种办法是直接用HTTP也行,可以省略此步)
  3. 制作镜像,发布。

安装Registry的最简方法是直接Pull一个现成的Registry镜像即可。

1

<code>docker pull registry</code>

Salin selepas log masuk

然后启动它。

1

<code>docker run <span>-p</span><span>5000</span>:<span>5000</span><span>-v</span> /home/registry:/tmp/registry registry</code>

Salin selepas log masuk

暴露5000端口对外服务,同时,装载宿主机的/home/registry目录作为仓库目录。

现在可以push自己的镜像到这个仓库了,需要先给一个镜像打个标签,然后PUSH即可,命令如下:

1

2

<code>docker tag java:<span>7</span>-jre hub<span>.wo</span><span>.cn</span>/yancheng/java

docker <span>push</span> hub<span>.wo</span><span>.cn</span>/yancheng/java</code>

Salin selepas log masuk

此时,必然会报一个安全错误:
Docker:私有仓库的搭建

从错误描述来看,有两种解决办法,一是使用HTTP,二是安装CA证书。

方法一,配置成HTTP,速度会稍快,也简单。只需要修改一下 /etc/default/docker 文件,加上一句话:

1

<code>DOCKER_OPTS=<span>"<span>$DOCKER_OPTS</span> --insecure-registry=hub.open.wo.cn"</span></code>

Salin selepas log masuk

然后重启Docker,sudo service docker restart,即可正常push了。

方法二,配置安全证书,略显麻烦,尤其是我们的docker registry在nginx后面。

首先,需要生成自己的证书(到服务器上操作),命令如下:

1

2

3

4

<code>openssl genrsa -des3 -<span>out</span> hub<span>.key</span><span>2048</span>

openssl rsa -<span>in</span> hub<span>.key</span> -<span>out</span> hub_nopwd<span>.key</span>

openssl req -new -key hub_nopwd<span>.key</span> -<span>out</span> hub<span>.csr</span>

openssl x509 -req -days <span>3650</span> -<span>in</span> hub<span>.csr</span> -signkey hub_nopwd<span>.key</span> -<span>out</span> hub<span>.crt</span></code>

Salin selepas log masuk

然后,我们配置一下Nginx,增加对HTTPS的支持。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<code>server {

   listen       <span>443</span>;

   server_name  hub<span>.</span>wo<span>.</span><span>cn</span>;

   ssl  <span>on</span>;

   ssl_certificate      /usr/<span>local</span>/nginx/conf/hub<span>.</span>crt;

   ssl_certificate_key  /usr/<span>local</span>/nginx/conf/hub_nopwd<span>.</span>key;

 

   location <span>/</span> {

        proxy_pass http:<span>//10.250.251.20:5000;</span>

        proxy_redirect off;

        proxy_set_header Host <span>$host</span>;

        proxy_set_header x<span>-forwarded</span><span>-for</span><span>$remote_addr</span>;

   }

}</code>

Salin selepas log masuk

注意hub.crt和hub_nopwd.key的位置。重启nginx。

现在,需要将这个hub.crt弄到本地,按前面截图的提示放到相应目录下。即:/etc/docker/certs.d/hub.open.wo.cn

再次重启docker,再push就正常了。

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了Docker:私有仓库的搭建,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membungkus projek dengan pycharm Bagaimana untuk membungkus projek dengan pycharm Apr 25, 2024 am 03:54 AM

Bagaimana untuk membungkus projek dengan pycharm

Kerentanan kunci pengesahan dua faktor Yubico yang tidak dapat ditambal memecah keselamatan kebanyakan peranti Yubikey 5, Kunci Keselamatan dan YubiHSM 2FA Kerentanan kunci pengesahan dua faktor Yubico yang tidak dapat ditambal memecah keselamatan kebanyakan peranti Yubikey 5, Kunci Keselamatan dan YubiHSM 2FA Sep 04, 2024 pm 06:32 PM

Kerentanan kunci pengesahan dua faktor Yubico yang tidak dapat ditambal memecah keselamatan kebanyakan peranti Yubikey 5, Kunci Keselamatan dan YubiHSM 2FA

Cara Memasang DeepSeek Cara Memasang DeepSeek Feb 19, 2025 pm 05:48 PM

Cara Memasang DeepSeek

Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP May 08, 2024 pm 02:21 PM

Pembangunan tangkas dan pengendalian kontena perkhidmatan mikro PHP

PI Node Teaching: Apakah nod pi? Bagaimana cara memasang dan menyediakan nod pi? PI Node Teaching: Apakah nod pi? Bagaimana cara memasang dan menyediakan nod pi? Mar 05, 2025 pm 05:57 PM

PI Node Teaching: Apakah nod pi? Bagaimana cara memasang dan menyediakan nod pi?

Seni bina dan amalan sistem teragih PHP Seni bina dan amalan sistem teragih PHP May 04, 2024 am 10:33 AM

Seni bina dan amalan sistem teragih PHP

Docker melengkapkan penggunaan tempatan model besar sumber terbuka LLama3 dalam masa tiga minit Docker melengkapkan penggunaan tempatan model besar sumber terbuka LLama3 dalam masa tiga minit Apr 26, 2024 am 10:19 AM

Docker melengkapkan penggunaan tempatan model besar sumber terbuka LLama3 dalam masa tiga minit

Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat? May 08, 2024 pm 10:15 PM

Bagaimana untuk menggunakan PHP CI/CD untuk lelaran dengan cepat?

See all articles