macOS设置指南

该页面包含有关使用开源Docker Registry托管自己的注册表的信息。有关Docker Hub的信息,它提供了托管注册表以及其他功能,例如团队,组织,Web挂钩,自动构建等,请参阅Docker Hub

用例

如果您打算在macOS上本地运行注册表服务器,这将很有用。

备择方案

您可以在macOS上启动VM,然后使用该VM中的Docker将注册表正常部署为容器。

解决方案

使用此处描述的方法,您可以从git存储库安装并编译自己的代码,并将其作为macOS代理运行。

陷阱

macOS上的生产服务操作不在本文档范围内。在考虑将其投入生产之前,请确保您对这些方面有充分的了解。

在机器上设置golang

如果您知道,请安全地跳到下一部分。

如果您不这样做,则TLDR为:

bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
source ~/.gvm/scripts/gvm
gvm install go1.4.2
gvm use go1.4.2

如果您想了解,则应阅读如何编写Go代码

检出Docker Distribution源代码树

mkdir -p $GOPATH/src/github.com/docker
git clone https://github.com/docker/distribution.git $GOPATH/src/github.com/docker/distribution
cd $GOPATH/src/github.com/docker/distribution

构建二进制文件

GOPATH=$(PWD)/Godeps/_workspace:$GOPATH make binaries
sudo mkdir -p /usr/local/libexec
sudo cp bin/registry /usr/local/libexec/registry

设置

复制注册表配置文件到位:

mkdir /Users/Shared/Registry
cp docs/osx/config.yml /Users/Shared/Registry/config.yml

在启动状态下运行Docker注册表

将Docker注册表plist复制到位:

plutil -lint registry/recipes/osx/com.docker.registry.plist
cp registry/recipes/osx/com.docker.registry.plist ~/Library/LaunchAgents/
chmod 644 ~/Library/LaunchAgents/com.docker.registry.plist

启动Docker注册表:

launchctl load ~/Library/LaunchAgents/com.docker.registry.plist

重新启动Docker Registry服务

launchctl stop com.docker.registry
launchctl start com.docker.registry

卸载Docker注册表服务

launchctl unload ~/Library/LaunchAgents/com.docker.registry.plist
注册表本地图像标签存储库分发macOS配方高级