系列目录 前面我们讲解了如何搭建nexus服务器,以及如何使用nexus搭建docker私有镜像仓库,示例中我们都是手动docker login登陆私服,然后通过命令拉取镜像然后运行容器.然而这种做法在kubernetes集群中是不可行的.第一,项目规模不同,每天产生的镜像数量也不同,如果每天产生大量仓库都要手动执行docker pull来拉取,非常麻烦也非常容易出错.第二,集群规模不同,节点数量也不同,少则三五个,多则成百上千甚至更多.我们一台台拉取显然非常麻烦,即便使用ansible脚本批量…
系列目录 上一节我们讲解到了如何限制用户访问dashboard的权限,这节我们讲解一个案例:如何创建一个只读权限的用户. 虽然可以根据实际情况灵活创建各种权限用户,但是实际生产环境中往往只需要两个就行了一个是前面创建的拥有集群所有权限的用户,另一个是一个拥有只读权限的普通用户.把只读权限分配给开发人员,使得开发人员也可以很清楚地看到自己的项目运行的状况. 在进行本章节之前,大家可以思考一下怎么用前面的知识来实现,大家可能都有思路,但是要真正的实现起来也不是一简非常容易的事,可能需要进行多轮修改和…
目录 1 背景说明 2 现象 pod无法启动,一直显示ContainerCreating 3 问题分析 kubelet的启动参数如下 4 尝试的解决方法 4.1 本地docker login登录镜像仓库,通过docker pull拉取该pause镜像,可以解决该问题(需要所有的node都将pause缓存到本地) 4.2 配置docker-registry secret,在pod的yaml文件中,配置imagePullSecrets来使用该secret,创建pod,仍然报这个错误 4.3 修改ha…
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上. 在 2.5.2 版本中,我们增加了一个重量级的新特性:自动拉取远程交叉编译工具链. 这是用来干什么的呢,做过交叉编译以及有 C/C++ 项目移植经验的同学应该知道,折腾各种交叉编译工具链,移植编译项目是非常麻烦的一件事,需要自己下载对应工具链…
业务场景,异地机房自动拉取已备份好的tar.gz数据库压缩包,并且只保留3天内的压缩包文件,用python实现 #!/usr/bin/env python import requests,time,os,datetime,platform from threading import Thread #cd backup dir if platform.system() == 'Windows': os.chdir('D:\python\mysqlbackup_all') elif platform…
开始拉取oracle11g镜像 下载过程稍长,镜像大小6.8G(之前拉取过了,所以就不截图了) #docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 下载完成后 查看镜像 # docker images 创建容器 # docker run -v /opt:/data -p 1521:1521 --name oracle11g -h demo --restart=always -d registry.cn-hangzho…
目录 1 背景说明 2 实现方法 3 具体实现 配置镜像仓库项目为公开类型(任何人可以访问) 配置docker-registry类型的secret(pod使用secret获取镜像认证) 通过账户名密码创建secret(secret保存了镜像仓库的凭证) 通过docker认证文件来创建secret 4 pod使用secret拉取私有镜像仓库中的镜像 1 背景说明 本文介绍pod启动时,如何通过私有镜像仓库(harbor)拉取镜像. 2 实现方法 配置镜像仓库项目为公开类型(任何人可以访问) 配置d…
首先本地   拉取mysql镜像 以下是所有mysql镜像 我自己下载的为5.6   下面 以5.6为例:(拉取mysql5.6镜像) docker pull mysql:5.6 创建一个容器 docker run --name : -e MYSQL_ROOT_PASSWORD=自己的数据库密码 -d mysql:5.6 --name    容器的名称 -p       本地(宿主机)端口:容器端口 -e MYSQL_ROOT_PASSWORD=******:初始化root用户的密码 -d: 后…
镜像拉取一直报错: Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) 解决方法: 1.创建daemon.json文件 vi /etc/docker/daemon.json 2.在文件内容加入: { "regi…
将镜像上传到远程之后,dockerfile按理来说只需一次拉取远程镜像就好了,之后每次都是使用第一次拉取的远程镜像. 但是实际上出现的问题是:dockerfile每次都从远程拉取镜像,浪费了资源和时间. 搜索的很久才知道原因:如果docker的镜像名称里面包含了”-“,那么dockerfile每次都会从远程拉取镜像.…