在centos 7上安装本地docker注册表
我正在尝试在CentOS 7上安装本地docker.io注册表 按照此处的说明操作机器: 我运行(编辑,只是为了显示docker正在运行): 查看提示几分钟后,我发现了一系列错误,如下所示:在centos 7上安装本地docker注册表,docker,docker-registry,Docker,Docker Registry,我正在尝试在CentOS 7上安装本地docker.io注册表 按照此处的说明操作机器: 我运行(编辑,只是为了显示docker正在运行): 查看提示几分钟后,我发现了一系列错误,如下所示: [...] OSError: [Errno 2] No such file or directory: './registry._setup_database.lock' [2015-03-06 16:39:11 +0000] [13] [INFO] Worker exiting (pid: 13) [2
[...]
OSError: [Errno 2] No such file or directory: './registry._setup_database.lock'
[2015-03-06 16:39:11 +0000] [13] [INFO] Worker exiting (pid: 13)
[2015-03-06 16:39:11 +0000] [14] [INFO] Worker exiting (pid: 14)
Traceback (most recent call last):
File "/usr/local/bin/gunicorn", line 11, in <module>
sys.exit(run())
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/wsgiapp.py", line 74, in run
WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 185, in run
super(Application, self).run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 71, in run
Arbiter(self).run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 196, in run
self.halt(reason=inst.reason, exit_status=inst.exit_status)
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 292, in halt
self.stop()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 343, in stop
time.sleep(0.1)
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 209, in handle_chld
self.reap_workers()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 459, in reap_workers
raise HaltServer(reason, self.WORKER_BOOT_ERROR)
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
系统:
cat /etc/centos-release
CentOS Linux release 7.0.1406 (Core)
uname -a
Linux denis1 3.10.0-123.20.1.el7.x86_64 #1 SMP Thu Jan 29 18:05:33 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
你知道我做错了什么吗
这个文件应该放在哪里<代码>./注册表。\设置\数据库.锁定'
编辑2:
如果我在我的Ubuntu14.10笔记本电脑上试用,在那里我通过ppa安装了新版本的docker,那么它可以工作:
# Upgraded to docker 1.5 via a ppa package in my Ubuntu laptop:
sudo add-apt-repository ppa:docker-maint/testing
sudo apt-get update
sudo apt-get install docker.io
# pull registry latest
sudo docker pull registry:latest
latest: Pulling from registry
fa4fd76b09ce: Downloading 6.931 MB/197.2 MB 3m10s
1c8294cc5160: Download complete
117ee323aaa9: Download complete
fa4fd76b09ce: Pull complete
fa4fd76b09ce: Download complete
1c8294cc5160: Download complete
117ee323aaa9: Download complete
2d24f826cb16: Download complete
777c3edddace: Download complete
f06997673ad7: Download complete
7eafad9a1f16: Download complete
daa8104aee86: Download complete
418dcd975ba2: Download complete
30bff528d188: Download complete
a4f468439f7f: Download complete
e5a8e33139de: Download complete
024a18254446: Download complete
a68f5599e08a: Download complete
511136ea3c5a: Download complete
Status: Downloaded newer image for registry:latest
我该怎么做才能在CentOS服务器上获得相同的结果?
我是否可以通过
yum install
为CentOS 6获得更新的docker客户端?我觉得我们可以总结如下内容:
[...]
OSError: [Errno 2] No such file or directory: './registry._setup_database.lock'
[2015-03-06 16:39:11 +0000] [13] [INFO] Worker exiting (pid: 13)
[2015-03-06 16:39:11 +0000] [14] [INFO] Worker exiting (pid: 14)
Traceback (most recent call last):
File "/usr/local/bin/gunicorn", line 11, in <module>
sys.exit(run())
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/wsgiapp.py", line 74, in run
WSGIApplication("%(prog)s [OPTIONS] [APP_MODULE]").run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 185, in run
super(Application, self).run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/app/base.py", line 71, in run
Arbiter(self).run()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 196, in run
self.halt(reason=inst.reason, exit_status=inst.exit_status)
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 292, in halt
self.stop()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 343, in stop
time.sleep(0.1)
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 209, in handle_chld
self.reap_workers()
File "/usr/local/lib/python2.7/dist-packages/gunicorn/arbiter.py", line 459, in reap_workers
raise HaltServer(reason, self.WORKER_BOOT_ERROR)
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
声明只支持docker 1.5。你跑的是1.3,在这两者之间有一个相当大的跳跃
支持的Docker版本
Docker 1.5.0版正式支持此映像
尽最大努力提供对旧版本(低至1.0)的支持
基础
在CentOS 6.5上,您可以yum从EPEL()安装docker
,并获得docker 1.5。早于6.5,您必须yum安装docker io
,而且1.4似乎是EPEL提供的最新版本
根据我的经验,Docker对RedHat系列系统的支持不如Debian系列,但在RH和Docker的最新版本中,这一差距已经缩小。禁用SELINUX和FireWalld SELINUX正在阻止某些命令的执行,比如SUDO,这在某种程度上抑制了行为 还要检查FireWallD 升级docker版本或“最新”标签等都不能解决您的问题,我都试过了。。。它与SELINUX和/或FireWallD有关。。。如果可以,请禁用这两个选项 我将docker版本升级到1.5.0,方法是将其添加到yum.repos.d:
[virt7-testing]
name=virt7-testing
baseurl=http://cbs.centos.org/repos/virt7-testing/x86_64/os/
enabled=1
gpgcheck=0
您使用的是什么版本的docker?在什么平台上(ubuntu/rhel/coreos/etc)?在centos 6Run
docker--version
上储存docker,以获得docker的版本。docker version 1.3.2
是安装在centos系统上的版本。请仔细检查您是否没有做过类似于构建自己的名为“注册表”的映像的事情?显式拉入注册表:最新的?我看不出你做错了什么。我怀疑Docker 1.3版的RedHat系列的注册表
图像可能会被破坏。谢谢,这现在是有道理的。我已经为centos 7更新了我的问题。事实证明,一直以来都是centos 7,只是仍然没有办法使其适用于默认的docker.io,即1.3.2。
[virt7-testing]
name=virt7-testing
baseurl=http://cbs.centos.org/repos/virt7-testing/x86_64/os/
enabled=1
gpgcheck=0