docker官方仓库是docker hub。虽然很好用,但是无法满足私密性的要求。

如果只需要在局域网内或者朋友圈内分享各自制作的image,那么,搭建属于自己的docker仓库变得很有必要。

一、环境

我的host环境是debian jessie。

首先安装docker。

1、安装docker
# sudo apt-get update
# sudo apt-get install docker.io

2、制作一个docker镜像

a) sudo apt-get install debootstrap
b) sudo debootstrap Jessie ./jessie http://mirrors.163.com/jessie
c) cd ./jessie
d) tar -cf ../debian-jessie.tar .(后面这个点一定要打)
e) cd ..
f) cat ./debian-jessie.tar | sudo docker import – jessie
g) sudo docker run -i -t jessie /bin/bash(测试是否制作成功也可用docker images进行查看)

我选择了制作一个jessie镜像。docker hub上没有我要的,所以采用的方式是自己下载了导进去。

为什么要用jessie?可能仅仅是习惯,或者是喜欢的人也用jessie。*^-^*

二、搭建docker私人仓库

1、pull registry镜像

#sudo docker pull registry

完成后,docker images查看。OK,registry镜像已经在我们的列表里了。

2、运行registry镜像

#docker run -d -p 5000:5000 registry

//因为比较懒,所以楼主直接用root来run的。还是不建议这样做,建议使用sudo。

这句实际上将host的5000端口映射为私人registry的web端口。

此时访问http://127.0.0.1:5000,会看到

当然,这个页面是极其简陋的。你可以根据你自己的口味进行装饰。

三、使用做好的私人仓库

1、给你的image打标记

docker images查看你的镜像的ID。楼主选了一个大小最小的。

tag后面就是你要上传的image ID(这里可以只填前面几个字符)

127.0.0.1:5000就是我们的私人仓库所在地。

/debian/base是你给你要上传的镜像取的名字。/debian是类别,/base是版本名。

你也可以按照你的兴趣,取各种奇怪的名字。只要你看到名字能想起来这个镜像是什么。

2、上传打好标记的image

将标记为/debian/base的镜像上传到127.0.0.1:5000。

上传后,可使用http://127.0.0.1:5000/v1/search查看。

哈哈,依然简陋,不过信息都有了:这个registry上只有一个镜像,所以num_results是1。

这个镜像的名字就是我们起的/debian/base。

~~~~END~~~~

debian上搭建私有docker仓库的更多相关文章

  1. [转] 使用HTTPS在Nexus Repository Manager 3.0上搭建私有Docker仓库

    FROM: https://www.hifreud.com/2018/06/06/03-nexus-docker-repository-with-ssl/ 搭建方式 搭建SSL的Nexus官方提供两种 ...

  2. 在CentOS 7上搭建私有Docker仓库

    Hub IP:10.0.2.6 操作系统:CentOS 7 64位 Docker版本:1.12.5Client IP:10.0.2.4 操作系统:CentOS 7 64位 Docker版本:1.12. ...

  3. 在阿里云上搭建私有GIT仓库

    在阿里云上搭建私有GIT仓库 年轻人就得好好学习,不能这么颓废 最近做项目练练手,用到了github, 但是github访问速度是真的慢啊,下载项目,下载一天了.所以呢,我是个成熟的人了,只好自己搭建 ...

  4. 使用 Nexus Repository Manager 搭建私有docker仓库

    使用容器安装Nexus3 1.下载nexus3的镜像: docker pull sonatype/nexus3 2.使用镜像启动一个容器: docker run -d --name nexus  -- ...

  5. docker+Nexus Repository Manager 搭建私有docker仓库

    使用容器安装Nexus3 1.下载nexus3的镜像: docker pull sonatype/nexus3 2.使用镜像启动一个容器: docker run -d -p 8081:8081 -p ...

  6. 搭建私有docker仓库

    安装docker yum install docker 启动docker systemctl start docker 拉取registry镜像 docker pull registry 创建仓库配置 ...

  7. 在Linux上搭建私有git仓库

    最近在学Linux,顺便将自己的服务器用起来,不然又得废弃一年.这次是跟着网上的教程做一个简单的git私有仓库,复杂完整的git系统还需使用gitlib系统. 首先在linux上安装git yum i ...

  8. [转]Ubuntu18.04下使用Docker Registry快速搭建私有镜像仓库

    本文转自:https://blog.csdn.net/BigData_Mining/article/details/88233015 1.背景 在 Docker 中,当我们执行 docker pull ...

  9. 【Docker】(4)搭建私有镜像仓库

    [Docker](4)搭建私有镜像仓库 说明 1. 这里是通过阿里云,搭建Docker私有镜像仓库. 2. 这里打包的镜像是从官网拉下来的,并不是自己项目创建的新镜像,主要测试功能 一.搭建过程 首先 ...

随机推荐

  1. 修改一张MyISAM表row_format为fixed为InnoDB表报错处理

    最近优化GTID模式下事务表和非事务表更新报错处理时,发现某几张表更改存储引擎为InnoDB报错如下: mysql> alter table sc_xxx_video_xxxxengine = ...

  2. Django学习:连接Mysql数据库

    开发环境: Windows 10 Python 3.7.4 Django 2.2.6 Mysql 8.0.17 承接上一节:https://www.cnblogs.com/daydayupup/p/1 ...

  3. selenium检测webdriver封爬虫的解决方法

    有不少朋友在开发爬虫的过程中喜欢使用Selenium + Chromedriver,以为这样就能做到不被网站的反爬虫机制发现. 先不说淘宝这种基于用户行为的反爬虫策略,仅仅是一个普通的小网站,使用一行 ...

  4. 关于JPype报FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib/jvm'错误的解决

    部署到线上的项目正常运行一年,今天早上突然报FileNotFoundError: [Errno 2] No such file or directory: '/usr/lib/jvm'错误. JPyp ...

  5. centos能进入命令行界面,进不了图形界面

    在开机引导界面按“e”, 找到linux16开头的一行,定位到ro然后修改ro为rw,并添加:init=/sysroot/bin/sh 使用ctrl x进入安全模式. 使用命令:chroot /sys ...

  6. 关于WebMvcConfigurationSupport的大坑-静态资源访问不了

    WebMvcConfigurationSupport是spring boot2.0以后用来替代WebMvcConfigurerAdapter,但是如果你直接用WebMvcConfigurationSu ...

  7. 开发中少不了的Fun -- js判断设备

    判断是否是移动设备 var ua = window.navigator.userAgent.toLowerCase(); if(ua.indexOf('mobile')!== -1){ return ...

  8. Java笔记(第七篇 JDBC操作数据库)

    JDBC是连接数据库和java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作.学习java语言,必须学习JDBC技术,因为JDBC技术实在java语言中被广泛使用的一种操作数据库 ...

  9. SPI使用笔记ADS1259+AD5676

    SPI的通信速率通常比较快.目前用到的ADS1259芯片,可以达到2-4MHz,可能可以更加快.一般spi都是从慢速开始调试,但是具体到某个芯片,应该核对芯片时序图,比如ti的ds1259,数据手册上 ...

  10. 利用swoole coroutine协程实现redis异步操作

    <?php #注意:如果不开启兼容模式,会遇到这样的现象,用swoole协程的方法访问常规方法添加到redis中的数据,可能访问不到(直接返回NULL)!这可能是两者采用了不同的技术标准所致! ...