在MAC服务器上搭建docker-registry
2014-03-14      0个评论    来源:在MAC服务器上搭建docker-registry  
收藏    我要投稿

本文介绍如何在MAC下搭建docker的registry,我们在国内下载docker的镜像非常慢,因此为团队搭建一个基础的registry是非常有必要的,而在MAC中的docker实际上是基于虚拟机运 行的,因此如果想要持久化registry内的东西就要经过几个步骤,首先要将虚拟机和主机的磁盘做关联,其次是docker的registry的 image存储要和虚拟机挂载的磁盘做关联,这样才能让docker中的文件穿透到主机,本文比较完整的介绍了整个安装部署过程。

安装homebrew

如果已经安装请略过, 详情请见 http://brew.sh/

请大家确认已经安装过了XCode的Command line Tools以及VirtualBox

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

更新homebrew

为了确保有boot2docker的安装脚本

brew update

安装boot2docker

brew install boot2docker

初始化 boot2docker

boot2docker init

初始化完成后需要将DOCKER_HOST的地址设置为tcp://127.0.0.1:4243

export DOCKER_HOST=tcp://127.0.0.1:4243

为了方便,可以将这个信息直接加入到 ~/.bash_profile,这样就不用每次都export

将虚拟机中的端口映射到主机端口

在命令行中运行

VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port5000,tcp,,5000,,5000";

启动 boot2docker

boot2docker start

启动后会提示需要export docker的变量参数

挂载主机磁盘

为了保证数据不丢失,还是尽量将有用的数据映射到真实的磁盘,这样即使是虚拟机磁盘损坏,以后还可以恢复仓库数据

1.在Mac主机上安装osxfuse和sshfs

下载地址:http://osxfuse.github.io

2.在Mac主机上创建文件~/.boot2docker/b2d-passwd,并将boot2docker的ssh密码保存在这个文件里,默认为tcuser

3.在boot2docker的虚拟机中执行如下命令

可以通过 boot2docker ssh 进入

sudo mkdir /mnt/sda1/share
sudo chown -R docker:docker /mnt/sda1/share

4.在Mac主机上执行如下指令

sshfs docker@localhost:/mnt/sda1/share /docker/share -oping_diskarb,volname=share -p 2022 -o reconnect -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o password_stdin < ~/.boot2docker/b2d-passwd

5.在boot2docker的虚拟机中执行如下命令建立两个目录,用于存储仓库数据配置信息

可根据您的实际情况修改

mkdir /mnt/sda1/share/registry
mkdir /mnt/sda1/share/registry-config

如果想要取消挂载,则在Mac上执行

umount -f /docker/share

关于磁盘的映射方法来自https://github.com/boot2docker/boot2docker/issues/188

使用docker下载registry镜像

docker pull registry

下载镜像最好先VPN,你懂的

设置registry的config文件

dev:
loglevel: info
storage: local
storage_path: /mnt/registry

启动registry

docker run -d -p 5000:5000 -v /mnt/sda1/share:/mnt -e DOCKER_REGISTRY_CONFIG=/mnt/registry-config/config.yml registry

在MAC服务器上搭建docker-registry(转)的更多相关文章

  1. 在Ubuntu14.04系统POWER8服务器上搭建Docker Registry服务

    本文描述了如何在POWER8服务器上搭建一个本地化的Docker镜像仓库,主要涉及镜像制作,Docker Registry服务启动等.希望能够对在非X86服务器上搭建Docker仓库的同学提供参考. ...

  2. 服务器上的 Git - 在服务器上搭建 Git

    http://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E5%9C%A8%E6%9C%8D%E ...

  3. 简单搭建docker registry

    已知信息: 服务端IP:192.168.7.2xx 客户端IP:192.168.7.1xx 服务端: docker registry中镜像本地映射地址:/Users/dockergit/private ...

  4. 搭建docker registry私有镜像仓库

    搭建docker registry私有镜像仓库 一.安装docker-distribution yum install -y docker-distribution 安装完成后,启动服务: syste ...

  5. PHP绿色集成环境在云服务器上的应用,PHPWAMP在服务器上搭建网站案例

    问:什么叫WAMP?答:Windows下的Apache+Mysql+PHP,称之为WAMP. 本文案例采用的PHP集成环境是我自己开发的纯绿色版WAMP软件(PHPWAMP). 我在这款集成环境里集成 ...

  6. 阿里云ECS服务器上搭建keepalived+mha+mysql5.6+gtid+一主两从+脚本判断架构踩的坑

    最近,公司项目搭建了一套后端数据库架构,不是在RDS,是在阿里云的ECS服务器上搭建keepalived.mha.mysql5.6.gtid.一主两从架构,目前还没有实现读写分离,以后架构升级,可能代 ...

  7. 在服务器上搭建node环境

    一般公司的发布是后台人员完成的,但是作为开发不会发布项目还是有点不高级的感觉 因为没有搭建虚拟机于是就直接在我阿里云的服务器上搭建了node环境, 第一步,前往node官网下载linux下的阿里云的镜 ...

  8. 转-在Mac OS上搭建Python的开发环境

    在Mac OS上搭建Python的开发环境   本文转载自:http://www.jb51.net/article/76931.htm 一. 安装python mac系统其实自带了一个python的执 ...

  9. 在一台服务器上搭建多个网站的方法(Apache版)

    Apache的配置文件一般放置在/etc/httpd/conf文件夹下,httpd.conf是它的主配置文件,在进行配置时可以将虚拟主机的配置文件单独配置,如取名为vhost.conf,然后再http ...

随机推荐

  1. Selenium2学习-041-chromedriver:org.openqa.selenium.WebDriverException: unknown error: cannot determine loading status from unexpected alert open

    今天在写WebDriver处理弹出框(alert.confirm.prompt)演示实例脚本分发给朋友时,在其执行时未能成功执行,对应的部分错误详情如下: org.openqa.selenium.We ...

  2. Google Supersonic列存储查询库的介绍、安装、测试

    查询引擎库介绍: http://www.infoq.com/cn/news/2012/10/Google-Supersonic/ Supersonic是一个面向列存储数据库的查询引擎库,它提供了一组数 ...

  3. 好用的Markdown编辑器一览

    Markdown 是一种简单的.轻量级的标记语法.用户可以使用诸如 * # 等简单的标记符号以最小的输入代价生成极富表现力的文档. Markdown具有很多优点: 写作中添加简单符号即完成排版,所见即 ...

  4. 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态。还请确保在应用程序配置的 // 节中包括 System.Web.SessionSta

    我直接在父类的构造方法中调用了sessionj结果就报这个错误 搜了好久 让改web.config 可是不起作用 代码如下: public class BasePage:System.Web.UI.P ...

  5. 探索模拟angular的双向绑定

    前言 本次探索的demo是基于jquery写的,毕竟jquery提供了强大的选择器,用惯了就离不开它了!angular的双向绑定实在是有点精深,本次探索只实现了文本的双向绑定. View-Model ...

  6. leetcode 155

    题目描述: Design a stack that supports push, pop, top, and retrieving the minimum element in constant ti ...

  7. mac上启动Java项目失败

    解决办法参考地址:http://bbs.csdn.net/topics/390813742,感谢csdn账号为iwordword的大神

  8. css知多少——选择器的优先级

    1. 引言 上一节<css知多少(5)--选择器>最后提到,选择器类型过多将导致一些问题,是什么问题呢?咱们直接举例子说明. 上图中,css中的两个选择器都是针对<span>的 ...

  9. Android 中如何计算 App 的启动时间?

    (转载) 已知的两种方法貌似可以获取,但是感觉结果不准确:一种是,adb shell am start -w packagename/activity,这个可以得到两个值,ThisTime和Total ...

  10. ios web html 上传图片到服务器后方向不对解决

    结论: 1.ios上传会在exif中带一个 Orientation的属性,这个属性在windows中不会生效,在ios浏览器中会生效,造成图片在windows资源管理器中与ios浏览器中方向不一致 2 ...