Docker 备忘录
生命周期命令创建一个容器(不启动它):
1docker create [IMAGE]
重命名现有容器
1docker rename [CONTAINER_NAME] [NEW_CONTAINER_NAME]
在新容器中运行命令
1docker run [IMAGE] [COMMAND]
退出后移除容器
1docker run --rm [IMAGE]
启动一个容器并保持运行
1docker run -td [IMAGE]
启动一个容器并在容器中创建一个交互式 bash shell
1docker run -it [IMAGE]
在容器内创建、启动和运行命令,并在执行命令后移除容器。
1docker run -it-rm [IMAGE]
在已经运行的容器内执行命令。
1docker exec -it [container]
删除一个容器(如果它没有运行)
1docker rm [CONTAINER]
更新容器的配置
1docker update [CONTAINER]
启动和停止容器启动容器
1docker start [CONTAINER]
停止运行容器
1docker stop [C ...
CentOS 错误:为 repo 'appstream' 下载元数据失败...
报错场景
1sudo yum install -y yum-utils
出现如下错误的错误:为 repo ‘appstream’ 下载元数据失败 : Cannot prepare internal mirrorlist: No URLs in mirrorlist
错误原因
在2022年1月31日,CentOS团队终于从官方镜像中移除CentOS 8的所有包。
CentOS8已于2021年12月31日寿终正非,但软件包仍在官方镜像上保留了一段时间。现在他们被转移到https://vault.centos.org
解决方法如果你仍然需要运行CentOS 8,你可以在/etc/yum.repos.d中更新一下源。使用vault.centos.org代替mirror.centos.org。
执行一下两行代码进行修改
123sudo sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-* sudo sed -i -e "s|#baseurl=http://mirror.cen ...
CentOS7 环境变量详解
概念1、环境变量的含义程序(操作系统命令和应用程序)的执行都需要运行环境,这个环境是由多个环境变量组成的。
2、环境变量的分类
按生效的范围分类。系统环境变量:公共的,对全部的用户都生效。用户环境变量:用户私有的、自定义的个性化设置,只对该用户生效。
按生存周期分类。永久环境变量:在环境变量脚本文件中配置,用户每次登录时会自动执行这些脚本,相当于永久生效。临时环境变量:使用时在Shell中临时定义,退出Shell后失效。
3、Linux环境变量Linux环境变量也称之为Shell环境量变,以下划线和字母打头,由下划线、字母(区分大小写)和数字组成,习惯上使用大写字母,例如PATH、HOSTNAME、LANG等。
常用的环境变量1、查看环境变量
env命令
echo命令
2、常用的环境变量
PATH:可执行程序的搜索目录,可执行程序包括Linux系统命令和用户的应用程序,PATH变量的具体用法本文后面的章节中有详细的介绍。
LANG:Linux系统的语言、地区、字符集,LANG变量的具体用法本文后面的章节中有详细的介绍。
HOSTNAME:服务器的主机名。
SHELL:用户当前使用的 ...
Nginx 压力测试
1.下载测试工具1[root@nginx-test ~]# yum install httpd-tools
2.查看测试工具版本号1234[root@nginx-test ~]# ab -VThis is ApacheBench, Version 2.3 <$Revision: 1430300 $>Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/Licensed to The Apache Software Foundation, http://www.apache.org/
3.压力接口测试123[root@nginx-test ~]# ab -n 2000 -c 2 https://nues.cn/-n 总的请求数-c 并发数
4.相关参数123456789101112131415161718192021222324-n在测试会话中所执行的请求个数。默认时,仅执行一个请求。-c一次产生的请求个数。默认是一次一个。-t测试所进行的最大秒数。其内部隐含值是-n 50000,它可 ...
Grafana7.2.1版本安装zabbix插件,添加数据源找不到zabbix
报错场景Grafana7.2.1版本安装zabbix插件,添加数据源找不到zabbix
解决方法12345678[root@prometheus ~]# vim /etc/grafana/grafana.ini在690行 加上[plugins];enable_alpha = false;app_tls_skip_verify_insecure = falseallow_loading_unsigned_plugins = alexanderzobnin-zabbix-datasource#添加这行
重启服务
1[root@prometheus ~]# systemctl restart grafana-server.service
GitLab的备份与恢复
一、Gitlab的备份目录路径设置Gitlab的备份目录可以在Gitlab的配置文件中设置:
1vim /etc/gitlab/gitlab.rb
修改如下:
1234gitlab_rails['manage_backup_path'] = true gitlab_rails['backup_path'] = "/data/gitlab/backups" //gitlab备份目录gitlab_rails['backup_archive_permissions'] = 0644 //生成的备份文件权限gitlab_rails['backup_keep_time'] = 604800 //默认备份保留天数为7天(这里是604800秒)
创建备份目录
12mkdir -p /data/gitlab/backupschown -R git.git /data/gitlab/backups
最后使用下面命令重载gitlab配置文件,使上述 ...
不同网段通过静态路由实现互通
前言静态路由有5个主要的参数:目的地址和掩码、出接口和下一跳、优先级。
实验拓扑图[
1、配置各接口所属VLAN配置SwitchA。SwitchB和SwitchC的配置与SwitchA类似。1234567891011<HUAWEI> system-view[HUAWEI] sysname SwitchA[SwitchA] vlan batch 10 30[SwitchA] interface gigabitethernet 0/0/1[SwitchA-GigabitEthernet0/0/1] port link-type trunk[SwitchA-GigabitEthernet0/0/1] port trunk allow-pass vlan 10[SwitchA-GigabitEthernet0/0/1] quit[SwitchA] interface gigabitethernet 0/0/2[SwitchA-GigabitEthernet0/0/2] port link-type access[SwitchA-GigabitEthernet0/0/2] port ...
MySQL-配置密码策略(validate_password)插件
概述validate_password(密码插件)validate_password(密码插件)是MySQL5.6版本开始有的,部分版本默认是不开启的。作用:强制要求登入密码符合复杂性规范
检查插件目录1mysql> show variables like 'plugin_dir';
下载第三方开源插件文件并上传到步骤1目录上1mysql5.7默认安装了密码安全检查插件(validate_password)
配置文件中添加对象参数配置123456[mysqld]plugin-load-add=validate_password.soor plugin-load=validate_password.so# validate_password_policy=2validate-password=FORCE_PLUS_PERMANENT
连接数据库并进行安装插件1mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so';
检查确认1234567891011SE ...
Linux shell脚本 静态检查工具 shellcheck
简介shellcheck 是一款实用的 shell脚本静态检查工具。
首先,可以帮助你提前发现并修复简单的语法错误,节约时间。每次都需要运行才发现写错了一个小地方,确实非常浪费时间。
其次,可以针对你当前不够完善不够健壮的写法,提供建议,帮助你提前绕开一些坑,避免等问题真的发生了才去调试处理。
在其介绍中,目标是针对所有用户的,从初学者到高手,都用得上
指出并澄清典型的初学者的语法问题,那通常会shell提供神秘的错误消息。
指出并澄清典型的中级的语义问题,这些问题会导致shell出现奇怪且反直觉的行为。
指出可能导致高级用户的脚本中,可能在未来某种情况下失败的陷阱。
在网页上使用1非常简单,在网页 `https://www.shellcheck.net` 上,贴入你的脚本,运行检查即可
在命令行中使用1下载后,在命令行中调用 `shellcheck yourscript` 即可
集成到编辑器中(推荐)推荐将shellcheck直接集成到日常编辑器中,这样就可以直接在编辑器中查看ShellCheck建议,以最快速度发现并修复问题。
Vim 通过 ALE, Neomake 或 ...
静态路由实现主备备份
概述1静态路由的路由备份,就是通过给链路设置优先级来实现的;优先级最大的作为主链路,其余的作为备用链路,当主链路出现故障或断开时,备用链路会自动添加到路由表中使用。
实验拓扑图
配置思路采用如下的思路配置静态路由实现主备备份:
创建VLAN并配置各接口所属VLAN,配置各VLANIF接口的IP地址。
配置数据流来回两个方向的静态路由。
在各主机上配置IP地址和默认网关。
操作步骤配置各接口所属VLAN配置SwitchA,SwitchB,SwitchC和SwitchD的配置与SwitchA类似。
123456789101112131415<HUAWEI> system-view[HUAWEI] sysname SwitchA[SwitchA] vlan batch 10 100 400[SwitchA] interface gigabitethernet 0/0/1[SwitchA-GigabitEthernet0/0/1] port link-type access[SwitchA-GigabitEthernet0/0/1] port default vlan 10[S ...