2025年4月

若想要在Ansible Playbook使用{{ }},需要使用{{ '{{' }} {{ '}}' }}这样的方式进行转换,才能够正常使用

示例

通过 --format 获取docker容器的信息命令

# 通过docker inspect --format 获取指定的容器信息
# 通过column -t格式化列显示
docker inspect --format='Name:{{.Name}} RestartPolicy:{{.HostConfig.RestartPolicy.Name}} MaximumRetryCount:{{.HostConfig.RestartPolicy.MaximumRetryCount}}' $(docker ps -q)| column -t

在ansible playbook中使用,需要对 {{ }} 进行转义

- name: check docker RestartPolicy
  remote_user: dev
  hosts: test_docker_host
  gather_facts: False
  tasks:
    - name: get 输出信息到本地
      shell: "docker inspect --format='Name:{{ '{{' }}.Name{{ '}}' }} RestartPolicy:{{ '{{' }}.HostConfig.RestartPolicy.Name{{ '}}' }} MaximumRetryCount:{{ '{{' }}.HostConfig.RestartPolicy.MaximumRetryCount{{ '}}' }}' $(docker ps -q)| column -t > /tmp/docker_restartpolicy.txt"

有的时候,由于网络原因,国内无法获取某些镜像

比如获取k8s.gcr.io/metrics-server/metrics-server:v0.5.2镜像,有如下报错:

~$ docker pull k8s.gcr.io/metrics-server/metrics-server:v0.5.2
Error response from daemon: Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

这里提供两种解决方法:

1.通过配置代理拉取镜像

2.通过其它镜像仓库获取镜像

- 阅读剩余部分 -

有时候会针对某一个docker容器抓包,排查网络问题。就需要知道宿主机上的哪个虚拟网卡对应容器,可以通过以下方式查看。

示例:

test-container 容器抓包,具体操作

1.进入容器查看iflink

swift@xxx-001:~$ docker exec -it test-container bash
[root@384a71d00b2b sonatype]# cat /sys/class/net/eth0/iflink
9

2.宿主机查看对应虚拟网卡

swift@xxx-001:~$ ip link |grep 9
    link/ether 02:42:89:df:3d:4e brd ff:ff:ff:ff:ff:ff
    link/ether 8a:7d:fa:d0:96:39 brd ff:ff:ff:ff:ff:ff link-netnsid 3
9: vethadfe873@if8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master docker0 state UP mode DEFAULT group default
    link/ether da:90:0e:5d:04:af brd ff:ff:ff:ff:ff:ff link-netnsid 2
    link/ether f6:b8:43:09:0b:7d brd ff:ff:ff:ff:ff:ff link-netnsid 0
    link/ether ce:8c:08:d1:86:9e brd ff:ff:ff:ff:ff:ff
    link/ether 32:ce:9e:82:e2:0d brd ff:ff:ff:ff:ff:ff
    link/ether b2:2c:9b:3b:25:de brd ff:ff:ff:ff:ff:ff link-netnsid 4

可以看到宿主机上的 vethadfe873 该虚拟网卡对应 test-container 容器

3.接下来就可以根据该虚拟网卡进行抓包操作

swift@xxx-001:~$ sudo tcpdump -i vethadfe873 -n

SiteStatFooter

页脚展示统计信息,建站时间可以在插件管理中配置

使用方法

  1. 在 Typecho 根目录下的 usr/plugins 目录中,创建新目录 SiteStatFooter
  2. 将下面的这段代码保存为 Plugin.php
  3. 登录 Typecho 管理后台;
  4. 进入 控制台 → 插件 页面;
  5. 启用 SiteStatFooter 插件;
  6. 打开博客任意页面,在页面最底部应该能看到:
📝 文章:21 💬 评论:3 🏷️ 标签:21 📁 分类:6 ⏳ 运行:65 天

Plugin.php 内容为:

- 阅读剩余部分 -

gitlab相关信息

gitlab服务器地址: 192.168.1.100

gitlab版本: 10.1.0-ee

安装方式: Omnibus GitLab

主要备份文件

  • 配置文件: /etc/gitlab/gitlab.rb
  • 认证文件(很重要):/etc/gitlab/gitlab-secrets.json
  • 打包好的备份数据文件位于:/var/opt/gitlab/backups/, 文件名:(如:1611370331_2021_01_23_10.1.0-ee_gitlab_backup.tar)

- 阅读剩余部分 -