shell | 将本地镜像批量推送到 harbor
经常会下一些外网镜像用于测试,手动修改镜像tag然后推送在镜像较多的情况下比较繁琐,本文采用bash脚本方式批量推送不同格式的镜像 ...
经常会下一些外网镜像用于测试,手动修改镜像tag然后推送在镜像较多的情况下比较繁琐,本文采用bash脚本方式批量推送不同格式的镜像 ...
在 /etc/prifile.d 目录下新建一个文件,用户登录系统时自动生效 vim /etc/profile.d/history_conf.sh source /etc/profile.d/history_conf.sh # 手动生效 文件内容 export HISTFILE="$HOME/.bash_history" # 指定命令写入文件(默认~/.bash_history) export HISTSIZE=1000 # history输出记录数 export HISTFILESIZE=10000 # HISTFILE文件记录数 export HISTIGNORE="cmd1:cmd2:..." # 忽略指定cmd1,cmd2...的命令不被记录到文件;(加参数时会记录) export HISTCONTOL=ignoredups # ignoredups ...
一道乍看毫无逻辑,细想却很有趣的逻辑题 ...
shell 中 if 条件判断详解 ...
0 前言 本文参考以下链接: github issue # 638 1 报错信息 报错详细信息 Exception in thread "main" java.nio.file.NotDirectoryException: /usr/share/elasticsearch/plugins/plugin-descriptor.properties at java.base/sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:439) at java.base/java.nio.file.Files.newDirectoryStream(Files.java:482) at java.base/java.nio.file.Files.list(Files.java:3793) at org.elasticsearch.tools.launchers.BootstrapJvmOptions.getPluginInfo(BootstrapJvmOptions.java:49) at org.elasticsearch.tools.launchers.BootstrapJvmOptions.bootstrapJvmOptions(BootstrapJvmOptions.java:34) at org.elasticsearch.tools.launchers.JvmOptionsParser.jvmOptions(JvmOptionsParser.java:137) at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:86) 安装插件时直接将插件的 zip 解压到了 plugins 目录 导致的,每个插件应以目录的形式存放在 plugins 目录 中 [root@21-centos-7 ~]# ls /data/elasticsearch/plugins/ commons-codec-1.9.jar commons-logging-1.2.jar config elasticsearch-analysis-ik-7.17.3.jar httpclient-4.5.2.jar httpcore-4.4.4.jar plugin-descriptor.properties plugin-security.policy 2 解决 只需要为每个插件创建一个目录,并把插件解压到对应目录即可 mkdir /data/elasticsearch/plugins/elasticsearch-analysis-ik/ unzip elasticsearch-analysis-ik-7.17.3.zip -d /data/elasticsearch/plugins/elasticsearch-analysis-ik/ 以上
1 简介 kill 命令很容易让人产生误解, 以为仅仅是用来终止 linux 中的进程. 在 man 手册中对 kill 命令的解释如下, 不难看出, kill 命令是一个用于将指定的 signal 发送给进程的工具 DESCRIPTION The command kill sends the specified signal to the specified process or process group. If no signal is specified, the TERM signal is sent. The TERM signal will kill processes which do not catch this signal. For other processes, it may be necessary to use the KILL (9) signal, since this signal cannot be caught. Most modern shells have a builtin kill function, with a usage rather ...
1 基础概念 StatefulSet 应用场景:分布式应用、集群 部署有状态应用 解决 Pod 独立生命周期,保持 Pod 启动顺序和唯一性 稳定,唯一的网络标识符,持久存储 有序,优雅的部署和扩展、删除和终止 有序,滚动更新 StatefulSet 控制器的优势 稳定的存储 StatefulSet 的存储卷使用 VolumeClaimTemplate 创建,称为卷申请模板,当 StatefulSet 使用 VolumeClaimTemplate 创建一个 PersistentVolume 时,同样也会为每个 Pod 分配 ...
1 command args 如果指定了 containers.command,Dockerfile 中的 ENTRYPOINT 会被覆盖且 CMD 指令被忽略 如果指定了 containers.args,Dockerfile 中的 ENTRYPOINT 继续执行, CMD 指令 被覆盖 ENTRYPOINT CMD command args finally ["/ep1"] [“foo”, “bar”] ep-1 foo bar ["/ep1"] [“foo”, “bar”] ["/ep-2"] ep-2 ["/ep1"] [“foo”, “bar”] [“zoo”, “boo”] ep-1 zoo boo ["/ep1"] [“foo”, “bar”] ["/ep-2"] [“zoo”, “boo”] ep-2 zoo boo 2 CMD ENTRYPOINT 我们大概可以总结 ...
1 简介 Gateway API(之前叫 Service API)是由 SIG-NETWORK 社区管理的开源项目,项目地址 Ingress 资源对象不能很好的满足网络需求,很多场景下 Ingress 控制器都需要通过定义 annotations 或者 crd 来进行功能扩展,这对于使用标准和支持是非常不利的,新推出的 Gateway API 旨在通过可扩展的面向角色的接口来增强服务网络。 Gateway API 是 Kubernetes 中的一个 API 资源集合,包括 ...
kubernetes 中 Traefik ingress 的简介、部署及配置。 ...
kubernetes 中使用 Traefik ingress 的 ingressRoute 代理 http、https、tcp、udp ...
kubernetes 中使用 Traefik ingress 的 Middleware 实现重定向、白名单、用户认证、限流、熔断、压缩、自定义 error 页等操作 ...
kubernetes 中使用 Traefik ingress 的 TraefikService 实现加权轮询、灰度发布、流量复制、会话保持(粘性会话)等功能 ...
kubernetes 中部署配置 prometheus-operator, 快速搭建一套包含 node_exporter prometheus grafana alertmanager 的监控体系 ...
prometheus-operator 中使用 additionalScrapeConfig 添加自定义 job 和 target ...