配置docker本地仓库遇到的一些问题

在执行一下命令的时候遇到一些问题,记录如下:

000

# pip install docker-registry

Searching for M2Crypto==0.22.3

Reading https://pypi.python.org/simple/M2Crypto/

Best match: M2Crypto 0.22.3

Downloading https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz#md5=573f21aaac7d5c9549798e72ffcefedd

Processing M2Crypto-0.22.3.tar.gz

Writing /tmp/easy_install-vVPR1Z/M2Crypto-0.22.3/setup.cfg

Running M2Crypto-0.22.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-vVPR1Z/M2Crypto-0.22.3/egg-dist-tmp-3c7TJ3

SWIG/_m2crypto.i:30: Error: Unable to find 'openssl/opensslv.h'

SWIG/_m2crypto.i:33: Error: Unable to find 'openssl/safestack.h'

SWIG/_evp.i:12: Error: Unable to find 'openssl/opensslconf.h'

SWIG/_ec.i:7: Error: Unable to find 'openssl/opensslconf.h'

error: Setup script exited with error: command 'swig' failed with exit status

解决办法是安装 openssl-devel:

# yum install -y openssl-devel.x86_64

001

重新执行 pip install docker-registry

Searching for M2Crypto==0.22.3

Reading https://pypi.python.org/simple/M2Crypto/

Best match: M2Crypto 0.22.3

Downloading https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz#md5=573f21aaac7d5c9549798e72ffcefedd

Processing M2Crypto-0.22.3.tar.gz

Writing /tmp/easy_install-5hkA4l/M2Crypto-0.22.3/setup.cfg

Running M2Crypto-0.22.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-5hkA4l/M2Crypto-0.22.3/egg-dist-tmp-pZ_OGN

/usr/include/openssl/opensslconf.h:36: Error: CPP #error ""This openssl-devel package does not work your architecture?"". Use the -cpperraswarn option to continue swig processing.

error: Setup script exited with error: command 'swig' failed with exit status

解决办法是手动安装 M2Crypto 0.22.3 (M2Crypto 0.22.3在centos7上安装会有一些问题需要借助脚本)

1. 下载 M2Crypto-0.22.3.tar.gz

wget https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.22.3.tar.gz   #下载源码

tar zxvf M2Crypto/M2Crypto-0.22.3.tar.gz    # 解压

cd M2Crypto-0.22.3

2. 然后创建安装脚本,内容如下:

# vim fedora_setup.sh

#!/bin/sh

# This script is meant to work around the differences on Fedora Core-based# distributions (Redhat, CentOS, ...) compared to other common Linux

# distributions.

#

# Usage: ./fedora_setup.sh [setup.py options]

#

arch=`uname -m`

for i in SWIG/_{ec,evp}.i; do

sed -i -e "s/opensslconf\./opensslconf-${arch}\./" "$i"

done

SWIG_FEATURES=-cpperraswarn python setup.py $*

3. 然后为脚本添加执行权限,执行脚本,并安装M2Crypto 0.22.3

# chmod +x fedora_setup.sh

# ./fedora_setup.sh build

# python setup.py install

至此可以完成安装,需要注意的是私有仓库的配置文件 config_sample.yml在以下路径

/usr/lib/python2.7/site-packages/docker_registry-1.0.0_dev-py2.7.egg/config

002

配置完成后启动服务,push镜像的时候又有如下错误:

docker pull 172.16.18.159:5000/ubuntu:12.04

Error: Invalid registry endpoint https://172.16.18.159:5000/v1/: Get https://172.16.18.159:5000/v1/_ping: EOF. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry http://172.16.18.159:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/http://172.16.18.159:5000/ca.crt

解决方法是在docker的配置文件里面OPTIONS添加 –insecure-registry http://172.16.18.159:5000 选项

# /etc/sysconfig/docker

# Modify these options if you want to change the way the docker daemon runs

OPTIONS='--selinux-enabled --insecure-registry 172.16.18.159:5000'

DOCKER_CERT_PATH=/etc/docker

然后重启docker服务:

# systemctl restart docker

至此错误全部解决,本地仓库配置成功

原文地址:http://blog.51cto.com/sf1314/2112738

时间: 2024-11-03 22:11:51

配置docker本地仓库遇到的一些问题的相关文章

Centos7配置docker本地仓库

内网环境创建docker仓库 实验环境 192.168.80.200 #不能上外网的docker仓库,centos7系统 192.168.80.100 #能上外网的Linux服务器,centos7系统 利用yum仓库安装docker服务 把docker的rpm包导入内网yum仓库中(docker软件包docker-ce,container-selinux) (下载地址:http://rpmfind.net/linux/rpm2html/search.php) 配置好本地yum仓库源(具体配置可看

配置Maven本地仓库

1.下载解压缩Maven到本地目录 D:\apache-maven-3.3.9 2.配置Maven本地仓库 打开D:\apache-maven-3.3.9\conf\settings.xml 在第55行附近添加:   <localRepository>d:\Library\maven-repo</localRepository> 在第213行附近添加:     <profile>          <id>jdk-1.8</id>        

Docker本地仓库的推荐创建方法

Docker支持采用仓库(本处指的是registry)来支持镜像的分发和更新管理.这极大的便利了用户. 官方提供了dockerhub网站来作为一个公开的集中仓库.然而,本地访问dockerhub速度往往很慢,并且很多时候我们需要一个本地的私有仓库只供网内使用. 关于如何创建和使用本地仓库,其实已经有很多文章介绍了. 但是这些文章要么内容已经过时,要么给出了错误的配置,导致无法正常创建仓库. 首先,需要介绍下原理. Docker仓库实际上提供两方面的功能,一个是镜像管理,一个是认证. 前者主要由d

k8s环境部署.net core web项目(docker本地仓库)

在之前的文档中,我们部署了.net core web在k8s环境下,达成了集群管理项目的目的.但是,由于是本地部署,需要在所有的node节点都拉取好镜像,这是非常麻烦的,为了只维护一份代码,同步更新.我们将使用docker镜像拉取,但是,由于GitHub仓库的push和pull太慢,经常失败,因此,本地简单部署一个私有仓库.记录下过程. 一.准备工作 1.两台或以上的虚拟机,2cpu 192.168.3.181    k8s-master 192.168.2.156    k8s-node 2.

Centos7配置yum本地仓库

按http使用方式创建本地yum仓库 yum install httpd (安装Apache软件包,同理也可以使用nginx) 修改httpd的访问权限 <Directory /> AllowOverride none Require all granted </Directory> 注意: Require all granted :允许所有主机访问 Require all deny:拒绝所有主机访问 2. 进入默认的httpd路径,新建yum源目录分类名 mkdir -p ./c

docker本地仓库&amp;镜像

镜像的命名规则: 1.[冷数据]/[base镜像]例如:ansible,centos 2. lastest{最新的意思}  不是真的(随便命名) 3. [image name]=[repository]:[tag] 4[私有仓库ip]/[冷数据]/[base-images]:192.168.56.200/ansible-centos. docker tag  centos lupangpang/centos:1.0 引用镜像    命名        版本号 docker rmi lupangp

使用docker搭建nexus并配置docker私有仓库

**Nexus是用于Maven私服的,不过在官网上发现最新的Nexus 3.x还支持Docker仓库了,所以使用docker来搭建一下Nexus查找镜像docker search nexus 选取使用次数较多是镜像 拉取镜像docker pull sonatype/nexus3 查看拉取的镜像docker images 启动容器docker run -d --name nexus3 --restart=always -p 8081:8081 -p 8082:8082 sonatype/nexus

搭建docker本地仓库

如果没有创建docker环境的话,需要先安装docker环境. 1. 使用命令创建容器 docker run -d -p 8081:8080 atcol/docker-registry-ui 8081: 指定端口. 运行成功后使用 宿主机ip+端口 访问 url : 2. 创建docker的镜像仓库 ip+端口+/registry/index http://192.168.233.90:8081/registry/index 点击 创建仓库 参考: https://github.com/atco

github入门之配置github本地仓库

*前期准备工作 创建github账户 github地址 1.设置SSH_Key ssh-keygen -t rsa -C "你的邮箱" 2.查看秘钥 cat ~/.ssh/id_rsa.pub 3.github添加公开秘钥 title随便起个名字即可,key是第二步中的内容 4.成功后会显示如下