GitLab Container Registry
通过将GitLab Container Registry集成到GitLab中,每个项目都可以拥有自己的空间来存储其Docker镜像。
1. 启用Container Registry
如果在你的项目的侧边栏下找不到 Packages > Container Registry 这个目录,那么请联系管理员。
如果你使用的是GitLab.com,那么默认情况下此功能是启用的,因此可以立即开始使用Registry。当前,作为仓库大小限制的一部分,GitLab.com上的Registry有一个较小的大小限制(10GB)。
为了启用Container Registry :
- 进入Settings > General页面
- 展开Visibility, project features, permissions区域,并在项目上启用Container Registry特性
- 点击Save changes
2. 构建并推送镜像
假设Registry的URL是registry.example.com,首先你应该登录
docker login registry.example.com
构建和发布镜像应该是一个简单的过程。只需确保你使用的Registry URL的命名空间和项目名称是托管再GitLab上:
docker build -t registry.example.com/group/project/image .
docker push registry.example.com/group/project/image
项目命名格式:
<registry URL>/<namespace>/<project>/<image>
GitLab最多支持三级的镜像仓库名称
下面这些镜像tag命名都是有效的:
registry.example.com/group/project:some-tag
registry.example.com/group/project/image:latest
registry.example.com/group/project/my/image:rc1
3. 使用GitLab Container Registry中的镜像
docker run [options] registry.example.com/group/project/image [arguments]
4. 使用GitLab CI构建和推送镜像
GitLab CI/CD 允许你使用Docker Engine来构建和测试基于docker的项目。
持续集成和部署是一种趋势:
- 创建一个应用镜像
- 为这个镜像运行测试
- 推送镜像到远程注册中心
- 将推送的镜像部署到服务器上
docker build -t my-image dockerfiles/
docker run my-image /script/to/run/tests
docker tag my-image my-registry:5000/my-image
docker push my-registry:5000/my-image
Register Docker Runner
sudo gitlab-runner register \
--url"https://gitlab.example.com/" \
--registration-token "PROJECT_REGISTRATION_TOKEN" \
--description"docker-ruby:2.6" \
--executor "docker" \
--docker-image ruby:2.6 \
--docker-services postgres:latest \
--docker-services mysql:latest
5. Docs
https://docs.gitlab.com/ee/user/packages/container_registry/index.html
https://docs.gitlab.com/ee/administration/packages/container_registry.html
https://docs.gitlab.com/ee/ci/docker/using_docker_build.html
GitLab Container Registry的更多相关文章
- 使用 Azure Container Registry 储存镜像
Azure Container Registry(容器注册表)是基于 Docker Registry 2.0规范的托管专用 Docker 注册表服务. 可以创建和维护 Azure 容器注册表来存储与管 ...
- 远程办公的GitLab开源的员工手册:涵盖了公司价值观,内部沟通交流指南,开发流程,如何开会,写作风格指南,如何报销,如何请假,线上办公工具推荐等方方面面
原文 :https://docs.gitlab.com.cn/ce/ 英文 :https://about.gitlab.com/handbook/ GitLab Community Edition G ...
- Docker安装GitLab与Runner(网关),常规设置,自动化用到k8s+token
[转]图文详解k8s自动化持续集成之GitLab CI/CD Windows里面使用Debian命令行工具完成 和Docker网络相关的命令 查看某一个容器的网络 docker inspect 容器I ...
- 生产环境中使用Docker Swarm的一些建议
译者按: 实践中会发现,生产环境中使用单个Docker节点是远远不够的,搭建Docker集群势在必行.然而,面对Kubernetes, Mesos以及Swarm等众多容器集群系统,我们该如何选择呢?它 ...
- Azure Container Registry-基于开源 Docker Registry 的专用 Docker 注册表服务
本文语雀知识库:https://www.yuque.com/seanyu/azure/acr 概述 Azure 容器注册表(Azrue Container Registry,简称ACR)是 Azure ...
- docker中建立私有git服务器[gitlab]
现在使用git的很普遍,在开发内部如何建立个git服务器,本文以gitlab为例,让你分分钟就可以搭好一个环境[docker的威力非同一般] 首先在docker.com找到gitlab的下载源和信息, ...
- Jenkins + Ansible + Gitlab之gitlab篇
前言 持续交付 版本控制器:Gitlab.GitHub 持续集成工具:jenkins 部署工具:ansible 课程安排 Gitlab搭建与流程使用 Ansible环境配置与Playbook编写规范 ...
- Gitlab 备份迁移恢复报错gtar: .: Cannot mkdir: No such file or directory
1. 版本信息 OS: centos 6.9 Gitlab: gitlab-ce.10.7.4 gitlab-ce.10.8.0 gitlab-ce.10.8.3 gitlab-ce.10.8.4 2 ...
- Gitlab备份和恢复操作记录
前面已经介绍了Gitlab环境部署记录,这里简单说下Gitlab的备份和恢复操作记录: 1)Gitlab的备份目录路径设置 [root@code-server ~]# vim /etc/gitlab/ ...
随机推荐
- 最新中级java面试总结
最近面试了不少家公司,从一家非外包跳到了外包(委屈脸Ծ‸Ծ),下面总结一下最近的一些心得体会 1.如果在做技术只是为了过日子,而没多大兴趣,那你必须需要考虑一下行业发展方向了.选定一个行业,深入某个行 ...
- python+win32--com实现excel自动化
import win32com APP_TYPE = 'Excel.Application' xlBlack,xlRed,xlGray,xlBlue = 1,3,15,41 xlBreakFull ...
- 个人作业四——Alpha测试
个人作业四--Alpha测试 这个作业属于哪个课程 软件工程 这个作业要求在哪里 作业要求 团队名称 GP工作室 这个作业的目标 对其他小组的项目进行测试 测试人员 许佳文 学号 2017310242 ...
- Visual studio 2015 与 mysql 连接
Visual Studio 2015 Community连接到MySQL,步骤很简单,但刚弄的时候一脸. 这个学期开了一门课程,老师教的是visual studio 2010来开发.net的,但是我自 ...
- .net 项目更改默认命名空间
这个项目是我去年毕业设计做的项目,项目创建的时候由于手抖把Landlordtenant写成了 LandloRdtenant(R大写了),当时不知道如何改回来又担心改完之后报错也就没管了. 今天尝试使用 ...
- JVM基础快速入门篇
Java是一门可以跨平台的语言,但是Java本身是不可以实现跨平台的,需要JVM实现跨平台.javac编译好后的class文件,在Windows.Linux.Mac等系统上,只要该系统安装对应的Jav ...
- <背包>solution-CF118D_Caesar's Legions
Caesar's Legions Gaius Julius Caesar, a famous general, loved to line up his soldiers. Overall the a ...
- css的选择器及它的种类特性?
今天主要说的是选择器的基础, 首先看,选择器的优先级:!important > 行间样式 > id选择器 > class 选择器 == 属性选择器 > 标签选择器 > 通 ...
- Rancher2.x 一键式部署 Prometheus + Grafana 监控 Kubernetes 集群
目录 1.Prometheus & Grafana 介绍 2.环境.软件准备 3.Rancher 2.x 应用商店 4.一键式部署 Prometheus 5.验证 Prometheus + G ...
- 死磕dtd(1)
看到安卓开发里大量的xml文件和layout里的Android UI开始复习一下xml xml的校验规则依据dtd dtd里面大小写敏感.....查找了好久才发现这个问题 <?xml versi ...