Ubuntu下Gitlab安装、备份、恢复及相关问题
安装
sudo dpkg -i gitlab-ce_9.2.5-ce.0_amd64.deb
sudo gitlab-ctl reconfigure
备份
sudo gitlab-rake gitlab:backup:create
默认备份文件位置: /var/opt/gitlab/backups
备份配置文件及密匙: /etc/gitlab/gitlab.rb、/etc/gitlab/gitlab-secrets.json
恢复
sudo cp gitlab.rb /etc/gitlab/gitlab.rb
sudo cp gitla
Git简单命令说明
config
git config --local user.name "tongqijie"
git config --local user.email "tongqijie@hotmail.com"
git config credential.helper store
git config core.ignorecase false: 设置文件名大小写敏感
git config --local --unset user.password
git config --local advice.detachedHead false
git config --local htt
RS256(RSA with SHA-256)私钥和公钥生成方法
RS256私钥生成
openssl genrsa -out rs256_private_key.pem 2048
生成的私钥示例
//codefile:rs256_private_key.pem
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAnAUSXxqv7dsrb42IdwR8yJ+sYi0YCduTXbcNOurVLu9gOOQq
56ArwIwDKF7Tscd0oANRuYaNnPPJrM9D4drHITmK/V6zEerSs6UvJYJ4W+avaWnU
DIV+jd
ES256(ECDSA with SHA-256)私钥和公钥生成方法
标准格式ES256私钥生成
openssl ecparam -genkey -name prime256v1 -noout -out es256_private_key.pem
生成的标准格式es256私钥示例
//codefile:es256_private_key.pem
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIAhaV62YXNexj9/GY9EUcz25G69/afOiF2Vh0CxYlKRvoAoGCCqGSM49
AwEHoUQDQgAEuXR/yRJaNAAMGC0ga
Elasticsearch API
创建索引
curl --request PUT 'http://localhost:9200/logging'
创建成功响应
{"acknowledged":true,"shards_acknowledged":true,"index":"logging"}
删除索引
curl --request DELETE 'http://localhost:9200/logging'
删除成功响应
{"acknowledged":true}
设置字段动态映射
curl --request PUT 'http://localhost:9200/logging/_
Linux - 一些命令
link
创建symlink
ln -s path-of-source-file path-of-destination-folder
process
显示所有进程信息
ps -ef
top
Shift+M: 内存占用从大到小排列
杀死进程(等同于Ctrl+C)
kill -s 2 process-id
根据进程名获取PID
ps -ef | grep name | grep -v grep | awk '{print $2}'
systemd
重新加载systemd配置
systemctl daemon-reload
查看systemctl日志
jo
RabbitMQ - Ubuntu安装、使用
安装RabbitMQ
echo 'deb http://www.rabbitmq.com/debian/ stable main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install rabbitmq-server
日志目录: /var/lo
Swift - 文件相关操作
系统目录
缓存目录、下载目录、文档目录
public static var cachesDirectory: URL? {
get {
return FileManager.default.urls(for: .cachesDirectory, in: .userDomainMask).first
}
}
public static var downloadsDirectory: URL? {
get {
return FileManager.default.urls(for: .downloadsDire
Swift - 类初始化指南
Designated Initializers和Convenience Initializers
Rule 1
A designated initializer must call a designated initializer from its immediate superclass.
Rule 2
A convenience initializer must call another initializer from the same class.
Rule 3
A convenience initializer must ultimately call
Swift - 字符串扩展
字符串查询
输出参数为Int类型,而非String.Index类型,更易理解
public extension String {
func indexOf(value: Character) -> Int? {
if let index = self.firstIndex(of: value) {
return self.distance(from: self.startIndex, to: index)
} else {
return nil
}
}