docker-registry

什么是Docker?看这一篇干货文章就够了!

﹥>﹥吖頭↗ 提交于 2020-08-19 17:28:31
作为程序员我们应怎样理解docker? 容器技术的起源 假设你们公司正在秘密研发下一个“今日头条”APP,我们姑且称为明日头条,程序员自己 从头到尾搭建了一套环境 开始写代码,写完代码后程序员要把代码交给测试同学测试,这时测试同学开始 从头到尾搭建这套环境 ,测试过程中出现问题程序员也不用担心,大可以一脸无辜的撒娇,“明明在人家的环境上可以运行的”。 测试同学测完后终于可以上线了,这时运维同学又要重新 从头到尾搭建这套环境 ,费了九牛二虎之力搭建好环境开始上线,糟糕,上线系统就崩溃了,这时心理素质好的程序员又可以施展演技了,“明明在人家的环境上可以运行的”。 从整个过程可以看到,不但我们重复搭建了三套环境还要迫使程序员转行演员浪费表演才华,典型的浪费时间和效率,聪明的程序员是永远不会满足现状的,因此又到了程序员改变世界的时候了,容器技术应运而生。 有的同学可能会说:“等等,先别改变世界,我们有虚拟机啊,VMware好用的飞起,先搭好一套虚拟机环境然后给测试和运维clone出来不就可以了吗?” 在没有容器技术之前,这确实是一个好办法,只不过这个办法还没有那么好。 先科普一下,现在云计算其底层的基石就是虚拟机技术,云计算厂商买回来一堆硬件搭建好数据中心后使用虚拟机技术就可以将硬件资源进行切分了,比如可以切分出100台虚拟机,这样就可以卖给很多用户了。 你可能会想这个办法为什么不好呢?

Azure DevOps+Docker+Asp.NET Core 实现CI/CD(二.创建CI持续集成管道)

余生长醉 提交于 2020-08-17 03:52:09
前言 本文主要是讲解如何使用Azure DevOps+Docker 来实现持续集成Asp.NET Core项目(当然 也可以是任意项目). 上一篇: Azure DevOps+Docker+Asp.NET Core 实现CI/CD(一 .简介与创建自己的代理池) 觉得有帮助的朋友~可以左上角点个关注,右下角点个推荐 今天我们废话不多说 直接开始正文 正文 昨天我们创建了自己的代理服务器 (其实也可以用Azure提供的免费代理服务器,就是要排队,而且比较慢,限制比较多..) 今天我们来讲讲如何创建自己的持续集成管道. 今天大致的流程图如下: 1. 创建私有Docker Registry 首先我们需要到自己需要持续集成的服务器上 安装Docker Registry来获取我们的docker image 安装Docker..我这就不说了.主要讲讲如何安装Docker Registry 直接拉取registry镜像: docker pull registry 查看是否存在镜像: 拉取到镜像后,我们直接Run 命令: docker run -itd -v /data/registry:/var/lib/registry -p 8082:5000 --restart=always --name registry registry:latest 这里的8082是你映射外网的端口.

总结:Docker

核能气质少年 提交于 2020-08-15 21:31:14
基础环境要求 要求系统版本不低于 CentOS Linux release 7.4.1708 (Core) 检查了下,满足的机器为transfer的机器:10.62.253.69,暂时使用这台机器操作。 登录镜像仓库 docker login : 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub 拉取需要的基础镜像 docker pull docker-registry.qiyi.virtual/docker/openjdk:11-jdk-slim 生成镜像文件 Dockerfile案例: FROM docker-registry.qiyi.virtual/docker/openjdk:8u212-jdk-alpine MAINTAINER weiwei WORKDIR /data/weiwei/firstDocker #指定工作目录,CMD命令默认就是在这个目录下找要执行的文件的 ADD ./hubble-biz-host-2.2.3-001-SNAPSHOT.jar /data/weiwei/firstDocker #将要执行的文件拷贝到这个目录下 CMD ["java","-jar","hubble-biz

Docker镜像仓库Harbor之搭建及配置

南楼画角 提交于 2020-08-15 04:06:53
Docker镜像仓库Harbor之搭建及配置 1、Harbor 介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的镜像仓库,但是从安全和效率等方面考虑,部署我们私有环境内的Registry也是非常必要的。Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。 2、环境、软件准备 本次演示环境,我是在虚拟机Linux Centos7上操作,以下是安装的软件及版本: Docker:version 1.12.6 Docker-compose: version 1.13.0 Harbor: version 1.1.2 注意:Harbor的所有服务组件都是在Docker中部署的,所以官方安装使用Docker-compose快速部署,所以我们需要安装Docker、Docker-compose。由于Harbor是基于Docker Registry V2版本,所以就要求Docker版本不小于1.10.0,Docker-compose版本不小于1.6.0。 1)Docker 安装 官网安装 Docker for CentOS yum安装 yum install docker 2) Docker-compose 安装 1

Harbor+Helm Chart构建k8s应用程序打包存储发布的基础环境

梦想的初衷 提交于 2020-08-13 12:09:49
Harbor 简介 Harbor是由VMware公司中国团队为企业用户设计的 Registry server开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界面、自我注册、HA、RESTful API等企业必需的功能,属于Cloud Native Computing Foundation(CNCF,云原生计算基金会)的毕业项目。 我们建议使用2.0以后的版本,Harbor在2.0以后的版本使Harbor成为第一个符合OCI(Open Container Initiative,开放容器倡议)标准的开源Registry server,能够存储大量云原生组件,例如container images、Helm Chart、OPAs、CNAB、Singularity等。 目前,Harbor最新稳定版本为2.1,本文使用此版本部署。 部署 1,我们的需求如下 提供registey服务的域名为registry.myk8s.com 我们需要把域名解析到有外网ip的nginx上,然后nginx给Harbor做代理 我们给Harbor单独提供一个分区挂载到了/data1目录 2,现在准备docker环境: # yum install docker-ce -y # yum install docker-compose -y # systemctl start docker 3

docker 镜像迁移

与世无争的帅哥 提交于 2020-08-11 03:23:23
镜像推送 通过save和load操作 docker save 会输出到文件流中,注意通过id生成的tar,load会丢失tag标签,所以建议都是使用tag进行save -o 输入到文件 docker save xxx -o xxx.tar docker save xxx > tar.gz docker save xxx | gzip > xxx.tar.gz 推荐方式(gzip可以从文件流中进行压缩) docker load 这种方式不会改变镜像的id docker load -i 通过私有registry 如果报错server gave HTTP response to HTTPS client,因为在新的版本docker的registry都是通过https,需要在docker客户端增加配置 /etc/docker/daemon.json # 设置为目标registry的地址 "insecure-registries":["172.21.104.195:5000", "registry.docker.com:5000"] sudo systemctl daemon-reload sudo systemctl restart docker docker tag xxx ip:port/xxx docker login ip:port docker push ip:port/xxx

Docker和k8s的区别与介绍

倖福魔咒の 提交于 2020-08-10 10:06:14
本文来源:鲜枣课堂 2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。 这家公司主要提供基于PaaS的云计算技术服务。具体来说,是和LXC有关的容器技术。 LXC,就是Linux容器虚拟技术(Linux container) 后来,dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。 Docker技术诞生之后,并没有引起行业的关注。而dotCloud公司,作为一家小型创业企业,在激烈的竞争之下,也步履维艰。 正当他们快要坚持不下去的时候,脑子里蹦出了“开源”的想法。 什么是“开源”?开源,就是开放源代码。也就是将原来内部保密的程序源代码开放给所有人,然后让大家一起参与进来,贡献代码和意见。 Open Source,开源 有的软件是一开始就开源的。也有的软件,是混不下去,创造者又不想放弃,所以选择开源。自己养不活,就吃“百家饭”嘛。 2013年3月,dotCloud公司的创始人之一,Docker之父,28岁的Solomon Hykes正式决定,将Docker项目开源。 Solomon Hykes(今年刚从Docker离职) 不开则已,一开惊人。 越来越多的IT工程师发现了Docker的优点,然后蜂拥而至,加入Docker开源社区。 Docker的人气迅速攀升,速度之快,令人瞠目结舌。 开源当月,Docker 0

Docker架构原理及简单使用

若如初见. 提交于 2020-08-10 05:28:06
一、简介 1、了解docker的前生LXC LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。 与传统虚拟化技术相比,它的优势在于: 1)与宿主机使用同一个内核,性能损耗小; 2)不需要指令级模拟; 3)不需要即时(Just-in-time)编译; 4)容器可以在CPU核心的本地运行指令,不需要任何专门的解释机制; 5)避免了准虚拟化和系统调用替换中的复杂性; 6)轻量级隔离,在隔离的同时还提供共享机制,以实现容器与宿主机的资源共享。 总结: Linux Container是一种轻量级的虚拟化的手段。Linux Container提供了在单一可控主机节点上支持多个相互隔离的server container同时执行的机制。Linux Container有点像chroot,提供了一个拥有自己进程和网络空间的虚拟环境,但又有别于虚拟机,因为lxc是一种操作系统层次上的资源的虚拟化。 2、LXC与docker什么关系?、 docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离

How can I use Github packages Docker registry in Kubernetes dockerconfigjson?

那年仲夏 提交于 2020-08-10 03:30:31
问题 How can I pull docker.pkg.github.com Docker images from within Kubernetes cluster? Currently, the Github Docker registry requires authentication even for packages from public Github repositories. 回答1: Create new Github Personal Access Token with read:packages scope at https://github.com/settings/tokens/new. Base-64 encode <your-github-username>:<TOKEN> , ie.: $ echo -n VojtechVitek:4eee0faaab222ab333aa444aeee0eee7ccc555b7 | base64 <AUTH> Note: Make sure not to encode a newline character at

docker在centOS7下安装与使用

自闭症网瘾萝莉.ら 提交于 2020-08-09 21:29:51
docker启动停止 sudo systemctl start docker.service sudo systemctl stop docker.service sudo systemctl restart docker.service sudo systemctl status docker.service sudo systemctl enable docker sudo docker ps -a ## <-- 列出已有的images ## sudo docker stop 17dd4ab4cda2 ##<-- 17dd4ab4cda2为container id ## sudo docker rm 17dd4ab4cda2 ##<-- 删除container id ## sudo docker rmi image_name ##<-- 删除images ## sudo docker ps -a | grep Exit | awk '{print $1}' | xargs docker rm ##<-- 删除exit的images ## docker info ## <-- 确认Docker是否正确安装 ## # docker rm --force `docker ps -qa` 遇到问题 cenOS启动docker后,虚拟机ping不通? 原因是docker守护进程