Docker 私有仓库的搭建

docker 私有仓库默认只支持https协议的访问  不支持http协议 如果需要允许通过http协议访问 必须手动修改配置文件

docker官方默认提供的仓库  提供软件包docker-distribution 由python开发的web系统

#   yum install docker-registry
      #   systemctl start docker-distribution

非dockerhub的Reistry必须明确指定服务器的地址 端口     非顶层的私有仓库还必须给定用户名

要想把镜像推送的私有仓库 必须先给镜像打上合适的标签 标签错误是无法上传docker 镜像的

给镜像打标签
# docker image ls
REPOSITORY TAG IMAGE ID
myweb v2 83d7884335ed
# docker tag myweb:v2 192.168.30.137:/myweb:v2_2 [root@nginx-docker]# docker push 192.168.30.137:/myweb
The push refers to a repository [192.168.30.137:/myweb]
Get https://192.168.30.137:5000/v1/_ping: http: server gave HTTP response to HTTPS client #允许运行http协议
[root@nginx-docker docker]# vi /etc/docker/daemon.json
{
"insecure-registries":["192.168.30.137:5000"]
} #修改daemon.json 拉取私有仓库镜像
[root myweb]# docker pull 192.168.30.137:/myweb:v2_2

私有仓库的上传和下载

HARBOR 搭建私有仓库

企业级docker私有仓库项目    原生支持镜像的冗余备份  主要由vmware 中国团队成员开发

支持访问控制  活动监控  主从复制

需要借助docker-compose 单机容器编排工具安装HARBOR

1.安装docker-compose

yum install docker-compose

# yum install docker-compose
# https://github.com/vmware/harbor
.下载harbor源码
.# tar xf harbor-offline-installer-v1.5.2.tgz -C /usr/local/
. vi /usr/local/harbor/harbor.cfg
hostname = myharbor.com 不能写服务器IP 必须写主机名
后面无法解析地址 造成上传镜像失败
.cd /usr/local/harbor
. ./install.sh 自动执行安装脚本

harbor安装

.http://192.168.30.139/harbor/sign-in
项目 》 新建项目(仓库) 》
.harbor上传下载镜像的时候需要进行用户认证的 harbor中创建的用户 [root@nginx-docker ~]# docker tag myweb:v2 192.168.30.139/dev/myweb:v2_1
[root@nginx-docker ~]# docker push 192.168.30.139/dev/myweb:v2_1
The push refers to a repository [192.168.30.139/dev/myweb]
Get https://192.168.30.139/v1/_ping: dial tcp 192.168.30.139:443: getsockopt: connection refused
[root@nginx-docker ~]# vi /etc/docker/daemon.json
[root@nginx-docker ~]# systemctl restart docker
[root@nginx-docker ~]# docker push 192.168.30.139/dev/myweb:v2_1
The push refers to a repository [192.168.30.139/dev/myweb]
86527283a11a: Preparing
b87bb670f898: Preparing
: Waiting
717b092b8c86: Waiting
denied: requested access to the resource is denied
[root@nginx-docker ~]# docker login 92.168.30.139
Username: yxh
Password:
Error response from daemon: Get https://92.168.30.139/v1/users/: dial tcp 92.168.30.139:443: i/o timeout 使用docker login不能使用服务器IP地址,必须使用可以被解析的主机名
vi /etc/hosts
192.168.30.139 myharbor.com [root@nginx-docker ~]# docker login myharbor.com
Username: yxh
Password:
Login Succeeded [root@nginx-docker ~]# docker tag myweb:v2 myharbor.com/dev/myweb:v2
[root@nginx-docker ~]# docker push myharbor.com/dev/myweb:v2
The push refers to a repository [myharbor.com/dev/myweb]
86527283a11a: Pushed
6263c50a557c: Pushed
c6ee3d0df60c: Pushed
2eb31a989e11: Pushed
v2: digest: sha256:41cfd4c47d2f24ca703ef32ff7de9ed166be65adf7c725ff2894cd0b0125ee2a size: 一次性推送整个仓库
.先给多个镜像打上标签
docker tag myweb:v3- myharbor.com/dev/myweb:v3-
docker tag myweb:v3- myharbor.com/dev/myweb:v3-
docker tag myweb:v3- myharbor.com/dev/myweb:v3-
.上传整个仓库(把三个镜像上传到同一仓库(myweb)中)
docker push myharbor.com/dev/myweb .下载镜像
# docker pull myharbor.com/dev/myweb:v2
Trying to pull repository myharbor.com/dev/myweb ...
v2: Pulling from myharbor.com/dev/myweb
Digest: sha256:41cfd4c47d2f24ca703ef32ff7de9ed166be65adf7c725ff2894cd0b0125ee2a
Status: Downloaded newer image for myharbor.com/dev/myweb:v2 docker-compose命令
停止harbor docker-compose stop
启动harbor docker-compose start

harbor上传和下载镜像

harbor仓库的使用

docker容器资源限制

容器技术能够实现主要依赖于内核的两个特性 名称空间和控制组

默认情况一个容器是没有使用资源的限制,它能耗掉宿主机上的所有资源

限制容器的cpu和内存这两种资源

OOM

如果系统内核探测到当前宿主机已经没有足够内存可分配给系统运行中重要的系统进程,就会抛出一个系统异常并且会强制杀死一些内存耗用比较大的应用进程

每个进程都有一个OOM_adj参数 代表一旦发生OOM 是否优先被kill的优先级

容器内存限制

容器CPU限制

cpu核心编号是从0开始编号的

--cpus   限制容器最多使用多少核cpu

# docker pull lorel/docker-stress-ng    下载docker容器压测镜像

启动容器后执行 stress help   查看相关使用文档

docker私有仓库搭建和资源限制的更多相关文章

  1. Docker学习笔记 — Docker私有仓库搭建

    Docker学习笔记 — Docker私有仓库搭建   目录(?)[-] 环境准备 搭建私有仓库 测试 管理仓库中的镜像 查询 删除 Registry V2   和Mavan的管理一样,Dockers ...

  2. CentOS7 Docker私有仓库搭建及删除镜像 【转】

    文章来源:centos7 Docker私有仓库搭建及删除镜像 如果不想用私有镜像库,你可以用docker的库 https://hub.docker.com 环境准备 环境:两个装有Docker 17. ...

  3. Docker学习笔记 — Docker私有仓库搭建【转载】

    标签: Docker 2015-03-10 21:08 24190人阅读 评论(0) 收藏 举报  分类: Docker(26)    目录(?)[+]   和Mavan的管理一样,Dockers不仅 ...

  4. docker私有仓库搭建(ubuntu 14.04和centos7)

    最近是在做一个关于docker云化的项目,马上就要开始实战.下午先做了一个私有仓库搭建的实验,先大概做个笔记,有兴趣的蛮看一下吧. 先在所有机子上都安装上docker,我的是两台ubuntu,分别是1 ...

  5. CentOS环境下Docker私有仓库搭建

    本文讲述如何搭建docker私有仓库. 有了docker hub,为什么还要搭建docker私有仓库? 1.性能考虑:docker hub的访问要通过互联网,性能太低. 2.安全性:更多的时候,镜像不 ...

  6. centos7 docker私有仓库搭建

    习Docker的过程中Docker的私有仓库一直没能成功,就是因为CentOS 6.x和CentOS 7默认引入了支持https认证,每次在push和pull的时候都会报错,今天是周末,利用一天的时间 ...

  7. docker私有仓库搭建及认证

    什么是docker? Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...

  8. Docker私有仓库搭建

    # 环境 系统 Linux 3.10.0-123.9.3.el7.x86_64 CentOS 7.0.1406 (Core) Docker 1.12.0, build 8eab29e 1.获取镜像 私 ...

  9. docker 私有仓库搭建

    知识基础:ubuntu系统安装,docker安装,了解docker的基础知识 下载镜像(如果下载2版本以上的需要配置ssl证书,这里先用0.9.1的演示) root@ubuntu:/# docker ...

随机推荐

  1. 我的Mac Pro coding环境配置

    新装了OS X 10.11.1. 记录一下开发用得到的一些玩意,方便下次再次配置. homebrew国内源:http://mirrors.tuna.tsinghua.edu.cn/help/#home ...

  2. Linux-C实现GPRS模块发送短信

    “GSM模块,是将GSM射频芯片.基带处理芯片.存储器.功放器件等集成在一块线路板上,具有独立的操作系统.GSM射频处理.基带处理并提供标准接口的功能模块.GSM模块根据其提供的数据传输速率又可以分为 ...

  3. Get Started with the Google Fonts API

    Get Started with the Google Fonts API This guide explains how to use the Google Fonts API to add fon ...

  4. Intersection Observer API 可以让你知道被观察元素何时进入或退出浏览器的视口

    google 文档 https://developers.google.cn/web/updates/2016/04/intersectionobserver MDN 文档 https://devel ...

  5. solus下 修改 crate-react-app 的默认下载依赖方式为 yarn

    vim /usr/local/share/.config/yarn/global/node_modules/create-react-app/createReactApp.js 或者是 修改 /usr ...

  6. JavaScript外部函数调用AngularJS的函数、$scope

    x 场景: 需要在用FusionCharts画的柱状图中添加点击事件,But弹出框是Angularjs搞的,我想的是直接跳到弹出框的那个路由里,然后在弹出框的控制器中绑定数据即可: /* 点击事件 * ...

  7. imu内参标定

    https://medium.com/@tomas789/iphone-calibration-camera-imu-and-kalibr-33b8645fb0aa how kalibr model ...

  8. ubuntu下能ping通ssh不通的解决思路

    1.首先看看是否能ping通,如果ping不通可能就要考虑网线.路由等问题了: 2.看防火墙是否关闭,sshd是否开启 3.ssh -v 服务器的ip号,根据提示寻找可能的问题: 我的问题在这一步之后 ...

  9. 基于cdh5.10.x hadoop版本的apache源码编译安装spark

    参考文档:http://spark.apache.org/docs/1.6.0/building-spark.html spark安装需要选择源码编译方式进行安装部署,cdh5.10.0提供默认的二进 ...

  10. CentOS7初始化mysql库报错

    在centos7上安装mysql数据库,进行数据库初始化工作时,报错缺少data::dumper库文件,如下: 解决办法:安装autoconf库后重新初始化即可解决. yum-y install au ...