docker中的gosu和su-exec工具

Docker 

volume的权限问题在Docker中,需要把host的目录挂载到container中作为volume使用时,往往会发生文件权限问题。 常见的现象是,container对该路径并无写权限,以致其中服务的各种千奇百怪的问题。导致这类问题的原因,是container内外的UID不同。 比如,host当前使用docker的用户UID是1000(这是默认第一个用户的UID)。 如果container内的U

docker网络解析不稳定

Docker 

新创建的容器,可能在容器中还没有缓存到需要的DNS缓存,就会造成部分网络解析不通。可以使用以下两种方法解决此问题:方法一,添加host:在docker 命令行中:--add-host='api.embbnux.com:10.98.10.98' 在 docker-compose 中添加:extra_hosts: # 增加此行与如下一行 - "api.embbnux.com:

vim 常用功能设置

System 

可创建一个~/.vimrc文件,在里面做自定义设置set number" 显示行号set nonumber" 关闭行号set tabstop=4 " 设置 tab space, 为4个空格。可缩写为tsset expandtab" 将tab替换为指定数量的空格set autoindent" 设置为自动缩进set noexpandtab"

Python 创建简单cgi web服务器


编写简单web服务器创建一个cgi服务器,名为http_server.py:from http.server import HTTPServer, CGIHTTPRequestHandlerPORT = 8000with HTTPServer(("", PORT), CGIHTTPRequestHandler) as httpd: print("serving

nmcli命令的使用

System 

nm是服务NetworkManager的缩写,cli表示命令行界面nmcli查询操作:查看NetworkManager服务状态,默认是开启的systemctl status NetworkManager这里需要注意,systemctl status network命令在centos8已经被官方淘汰,不再使用查看所有网卡的信息nmcli查看所有device详细信息nmcli device show查

MongoDB数据比较工具dbHash介绍


dbHash主要是用来比较MongoDB数据是否一致,例如升级版本前后的数据比较,主要是为了确认数据在升级后是完全恢复无误的。命令用法如下:先切换需要的库use news对全库进行dbHashdb.runCommand({dbHash:1}):{"host" : "localhost","collections" : {"con

mongodb的认证(authentication)与授权(authorization)


在文档中,system.users集合中的文件有如下模式:{ _id: <system defined id>, userId : <system assigned UUID>, // Starting in MongoDB 4.0.9 user: "<name>", db: "<database>"

MongoDB的备份和恢复,导入和导出


mongodb数据备份和恢复主要分为二种:一种是针对库的mongodump和mongorestore,一种是针对库中表的mongoexport和mongoimport。mongodump备份数据库常用命令格式mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表 -o 文件存放路径参数说明:-h 指明数据库宿主机的IP–port 指明数据库的端口-u

rabbitmq权限管理及常用命令


RabbitMQ 的权限角色none: 不能登录管理控制台(启用management plugin的情况下)普通管理者(management):仅可登陆管理控制台(启用management plugin的情况下),无法看到节点信息,也无法对策略进行管理。用户可以通过AMQP做的任何事外加:列出自己可以通过AMQP登入的virtual hosts查看自己的virtual hosts中的queues,

jenkins pipeline 报 unexpected char: '\' 错误


问题:在写jenkins pipeline script的时候,如果字符里面有\字符,比如这样:pipeline { agent any stages { stage('Check virtualenv') { steps { sh """ rm -r /mnt/x/some/director