搭建Docker私有仓库&用户密码认证&web可视化界面
1.拉取镜像
docker pull hyper/docker-registry-web
docker pull registry
2.安装
yum install docker-compose
3.搭建过程
(1)创建存放配置文件和私有仓库镜像的存储目录
mkdir -p /usr/local/docker-registry/conf/registry #存放仓库的配置信息
mkdir -p /usr/local/docker-registry/conf/registry-web #存放仓库UI界面的配置信息
mkdir -p /usr/local/docker-registry/registry #存放仓库的镜像
mkdir -p /usr/local/docker-registry/db #仓库的访问信息
(2)生成证书
openssl req -new -newkey rsa:4096 -days 365 \
-subj "/CN=192.168.199.189" \
-nodes -x509 \
-keyout /usr/local/docker-registry/conf/registry-web/auth.key \
-out /usr/local/docker-registry/conf/registry/auth.cert
(3)创建仓库的配置文件
vi /usr/local/docker-registry/conf/registry/config.yml
内容如下:
version: 0.1 storage:
filesystem:
rootdirectory: /var/lib/registry http:
addr: 0.0.0.0:5000 auth:
token:
realm: http://192.168.199.189:50000/api/auth
service: 192.168.199.189:5000
issuer: 'admin'
rootcertbundle: /etc/docker/registry/auth.cert
(4)创建仓库UI的配置文件
vi /usr/local/docker-registry/conf/registry-web/config.yml
内容如下:
registry:
url: http://192.168.199.189:5000/v2
name: 192.168.199.189:5000
readonly: false
auth:
enabled: true
issuer: 'admin'
key: /conf/auth.key
(5)创建docker-compose启动配置文件
version: '2'
services:
registry-web:
image: hyper/docker-registry-web:latest
ports:
- 50000:8080
volumes:
- /usr/local/docker-registry/conf/registry-web:/conf:ro
- /usr/local/docker-registry/db:/data
networks:
- registry-net
depends_on:
- registry
restart: always
registry:
image: registry:2.4.1
ports:
- 5000:5000
volumes:
- /usr/local/docker-registry/conf/registry:/etc/docker/registry:ro
- /usr/local/docker-registry/registry:/var/lib/registry
environment:
- REGISTRY_STORAGE_DELETE_ENABLED=true
networks:
- registry-net
restart: always
networks:
registry-net:
#driver: default #如果报错就注掉
yml文件主要格式,每一级都要缩进,最好用一个tab键,切记,如果启动失败,一定好好检查这几个配置文件,特别是空格(tab键)。
(6)通过docker-compose拉取镜像启动容器
docker-compose up -d
然后执行下面命令刷新配置:
systemctl daemon-reload
重启docker:
systemctl restart docker
--add-registry=192.168.199.189:5000 --insecure-registry=192.168.199.189:5000# systemctl daemon-reload
# systemctl restart docker
docker info
其他主机下载镜像:
在另外一台需要获取镜像的主机上配置registry为无CA模式:
vim /etc/docker/daemon.json
{
"insecure-registries" : ["192.168.199.189:5000"]
}
可以打开浏览器输入:192.168.199.189:50000
输入账号密码登录,默认是admin/admin,可以登录后修改,默认账号只有ui的管理功能,如果需要push功能还需要自己配置权限。
也可以使用docker命令登录:
docker login 192.168.199.189:5000
4. 提交镜像
(1)执行命令docker pull tomcat,从hub.docker.com下载最新版本的tomcat镜像
docker pull tomcat
(2) 执行命令docker images查看镜像列表
docker images
(3) 镜像添加一个带有私有仓库IP的TAG
docker tag dd6ff929584a 192.168.199.189:5000/tomcat
(4) 登录本地仓库
docker login 192.168.199.189:5000
(5) 提交镜像到本地仓库
docker push 192.168.199.189:5000/tomcat
搭建Docker私有仓库&用户密码认证&web可视化界面的更多相关文章
- 一步步搭建docker私有仓库并从私有仓库中下载镜像
一步步搭建docker私有仓库 #下载镜像 docker pull registry#查看镜像 docker images #运行私有仓库,指定端口和数据卷 docker run -d -p : -v ...
- 搭建docker私有仓库
保存镜像的地方成为仓库(registry).目前有2种仓库:公共仓库和私有仓库. 最方便的是使用公共仓库上传和下载镜像,下载不需要注册,上传需要到公共仓库注册.公共仓库网站:https://hub.d ...
- windows 环境下搭建docker私有仓库
windows 环境下搭建docker私有仓库 1.在公用仓库中pull仓库镜像 docker pull regitry 2.启动仓库镜像 //-d意思是后台运行,-p是做端口映射,这里是将本地的50 ...
- Centos7基于容器安装运行Docker私有仓库及添加认证
一.前言 官方的Docker hub是一个用于管理公共镜像的好地方,我们可以在上面找到我们想要的镜像,也可以把我们自己的镜像推送上去.但是,有时候,我们的使用场景需要我们拥有一个私有的镜像仓库用于管理 ...
- 03搭建docker私有仓库
搭建docker私仓,可以使用docker官方提供的registry镜像.该镜像目前有2.0,2.3和2.3.1版本.它只与1.6.0以上版本的docker兼容.搭建私仓的步骤如下: 一:无代理.无认 ...
- CentOS7搭建Docker私有仓库----Docker
有时候使用Docker Hub这样的公共仓库可能不方便,这种情况下用户可以使用registry创建一个本地仓库供私人使用,这点跟Maven的管理类似.目前Docker Registry已经升级到了v2 ...
- 手把手教你搭建Docker私有仓库
章节一:centos7 docker安装和使用_入门教程 章节二:使用docker部署Asp.net core web应用程序 有了前面的基础,接下来的操作就比较简单了.先准备两台虚拟机,两台机器上都 ...
- Docker自学纪实(六)搭建docker私有仓库
docker的镜像仓库分两种:一种是从官方公有仓库拉取:还有就是自己搭建私有仓库.官方的镜像仓库是面对整个应用市场的:私有仓库一般用于公司内部,就是公司项目自身所需的镜像.搭建私有仓库有什么好处?私有 ...
- 搭建docker私有仓库,建立k8s集群
服务器IP角色分布 192.168.5.2 etcd server 192.168.5.2 kubernetes master 192.168.5.3 kubernetes node 192.168. ...
随机推荐
- ansible下载文件的多种方式
对于ansible来说,下载文件是一个很重要的课题,这是build或者deploy的第一步,通常来讲由于不同项目的差异,可能我们的代码包或者资源文件保存在于http,github,nexus,ftp, ...
- iOS如何禁用长按页面弹出菜单
iOS如何禁止用户长按页面导致弹出菜单? 给元素设置样式: -webkit-touch-callout:none; 补充:同样适用于图片如果想禁止用户保存或者复制等
- Linux 下 OpenCV3 安装
编译安装OpenCV3 从官网下载:http://opencv.org/releases.html 选择一个较新版本的opencv3.X,下载source源代码 下载之后解压,并cd到该文件夹进行编译 ...
- 滴滴与Uber都盯上拉美市场!一场惨烈竞争谁能胜出?
创业者最怕的是什么?或许并不是在创业初期的艰难历程.毕竟在初期虽然会遇到很多磨难和众多竞争对手,但只要敢打敢拼就有胜出的可能.创业者最怕的或许是成为所属行业独角兽后,要面对势均力敌对手的凶猛攻击!大家 ...
- maven工具引入lib下的jar文件
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot ...
- Win10下 Java环境变量配置
安装java的JDK 下载地址 此电脑->属性->高级设置 "系统变量"新建 变量名:Java_Home 变量值:D:\Program Files\Java ...
- CentOS 7.3 下部署基于 Node.js的微信小程序商城
本文档为微信小程序商城NideShop项目的安装部署教程,欢迎star NideShop商城api服务:https://github.com/tumobi/nideshop NideShop微信小程序 ...
- 2019年阿里java面试题
一.JVM与性能优化 描述一下 JVM 加载 Class 文件的原理机制? 什么是类加载器? 类加载器有哪些? 什么是tomcat类加载机制? 类加载器双亲委派模型机制? Java 内存分配? Jav ...
- 如何解决Tomcat端口号被占用
在eclipse中配置好tomcat服务器后,启动时提示错误如下图 提示端口被占用. 第一种方法: 结束占用端口的进程 第一步:netstat -aon|findstr "端口号" ...
- 基础练习--huffman
问题描述 Huffman树在编码中有着广泛的应用.在这里,我们只关心Huffman树的构造过程. 给出一列数{pi}={p0, p1, …, pn-},用这列数构造Huffman树的过程如下: . 找 ...