在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
1.Docker registry 说明 2、安装docker-registry 复制代码 代码如下:docker run -d -e SETTINGS_FLAVOR=dev -e STORAGE_PATH=/tmp/registry -v /alidata/registry:/tmp/registry -p 5000:5000 registry # 如果本地没有下载过docker-registry,则首次会pull registry 运行时会映射路径和端口,以后就可以从/data/registry下找到私有仓库 3、客户端上的操作 复制代码 代码如下:curl -X GET http://registry.wpython.com:5000/v1/search
curl http://registry.wpython.com:5000/v1/search {"num_results": 1, "query": "", "results": [{"description": "", "name": "library/centos6"}]} # 拉取到本地 复制代码 代码如下:docker pull library/centos6
# tag 一个镜像 复制代码 代码如下:docker tag 8552ea9a16f9 registry.wpython.com:5000/centos6_x86_64.mini
# 将新的docker images push 到本地仓库 复制代码 代码如下:docker push registry.wpython.com:5000/centos6_x86_64.mini
4、加入nginx认证 # 安装nginx过程略 复制代码 代码如下:htpasswd -c /alidata/server/nginx/docker-registry.htpasswd admin
New password: Re-type new password: Adding password for user admin # 生成根密钥 复制代码 代码如下:cd /etc/pki/CA/
openssl genrsa -out private/cakey.pem 2048 # 生成根证书 复制代码 代码如下:openssl req -new -x509 -key private/cakey.pem -out cacert.pem Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:Brijing Locality Name (eg, city) []:Chaoyang Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.com Email Address []: # 为nginx服务器生成ssl密钥 复制代码 代码如下:cd /alidata/server/nginx/ssl
openssl genrsa -out nginx.key 2048 # 为nginx生成的证书签署请求 复制代码 代码如下: openssl req -new -key nginx.key -out nginx.csr You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:Beijing Locality Name (eg, city) []:Chaoyang Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (e.g. server FQDN or YOUR name) []:registry.wpython.com Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: # 私有CA根据请求来签发证书 复制代码 代码如下:openssl ca -in nginx.csr -out nginx.crt # 如果报如下错误: Using configuration from /usr/local/ssl/openssl.cnf /etc/pki/CA/index.txt: No such file or directory unable to open '/etc/pki/CA/index.txt' 140137408210600:error:02001002:system library:fopen:No such file or directory:bss_file.c:398:fopen('/etc/pki/CA/index.txt','r') 140137408210600:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:400: # 执行以下命令 复制代码 代码如下:cd /etc/pki/CA/ mkdir newcerts touch index.txt touch serial echo 01 > serial cd - openssl ca -in nginx.csr -out nginx.crt Using configuration from /usr/local/ssl/openssl.cnf Check that the request matches the signature Signature ok Certificate Details: Serial Number: 1 (0x1) Validity Not Before: May 12 04:15:08 2015 GMT Not After : May 11 04:15:08 2016 GMT Subject: countryName = CN stateOrProvinceName = Beijing organizationName = Internet Widgits Pty Ltd commonName = registry.wpython.com emailAddress = [email protected] X509v3 extensions: X509v3 Basic Constraints: CA:FALSE Netscape Comment: OpenSSL Generated Certificate X509v3 Subject Key Identifier: B5:20:C7:47:26:D9:26:54:12:F7:36:7E:4E:3A:F0:D9:0E:2C:F7:BD X509v3 Authority Key Identifier: keyid:93:F7:86:72:1B:2B:24:CD:AF:24:EF:53:F4:E1:FA:EC:E7:70:1A:90 Certificate is to be certified until May 11 04:15:08 2016 GMT (365 days) Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y Write out database with 1 new entries Data Base Updated # 发现根证书 复制代码 代码如下:# cp /etc/pki/tls/certs/ca-bundle.crt{,.bak} 备份以防出错
# cat /etc/pki/CA/cacert.pem >> /etc/pki/tls/certs/ca-bundle.crt # 创建nginx配置文件 复制代码 代码如下:# vi /alidata/server/nginx/conf/vhosts/www.wpython.com.conf
upstream docker-registry { server localhost:5000; } server { listen 8080; server_name registry.wpython.com; # enabled ssl ssl on; ssl_certificate /alidata/server/nginx/ssl/nginx.crt; ssl_certificate_key /alidata/server/nginx/ssl/nginx.key; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 0; chunked_transfer_encoding on; location / { auth_basic "Restricted"; auth_basic_user_file docker-registry.htpasswd; proxy_pass http://docker-registry; } location /_ping { auth_basic off; proxy_pass http://docker-registry; } location /v1/_ping { auth_basic off; proxy_pass http://docker-registry; } } # 完成测试 复制代码 代码如下:# docker login https://registry.wpython.com:8080 Username: admin Password: Email: [email protected] Login Succeeded |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论