[toc]
git 简单使用
- gitlab 新建项目
gitlab 本地新建地址
http://10.180.55.111:8088/dashboard/projects/
点击 New Project —-> RenJin / You project name —-> Create Project - 终端中的配置
# git config --global user.name "Jin.Ren"
# git config --global user.emal "renjin@transfereasy.com"
查看本机的密钥,添加至gitlab中
# cat ~/.ssh/id_rsa.pub
复制密钥至
gitlab 点击左下脚的用户名 —-> Profile Settings —>SSH Keys —-> (key) —-> Add key
git本地新项目上传
# mkdir deplay-test
# git init
# vim secruity.sh
# vim rolbask.sh
# chmod +x *.sh
# git commit -m "security scripts"
# git remote add origin git@10.180.55.111:Jin.Ren/deplay-test.git
# git push -u origin master
- git上传已经存在的repository
# cd old-deplay
# git remote add origin git@10.180.55.111:Jin.Ren/deplay-test.git
# git push -u origin master
- git 上传已经存在的repository
# git checkout -b seq
# git branch
# git checkout master
可以切换回master分支
- 补充mysql数据的导入导出
# mysqldump -uuser -ppasswd -hhost --databases data > /tmp/database.sql
mongo生产报错总结
- python 记入mongo时会报错 2.x 与 3.x 使用的加密方式不同
ubuntu升级mongo2.x到3.x
# sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
# echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
# sudo apt-get update
# sudo apt-get install -y mongodb-org=3.0.1 mongodb-org-server=3.0.1 mongodb-org-shell=3.0.1 mongodb-org-mongos=3.0.1 mongodb-org-tools=3.0.1
# su - root -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled"
# su - root -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag"
# sudo /etc/init.d/mongodb start
# mogon #此处便可以看到版本号了
# mogodb默认是没有密码的,需要在配置文件中将认证开启(但在此之前配置好用户有名和密码)
# mogon
{ user: "<name>",
pwd: "<cleartext password>",
customData: { <any information> }, # 任意的数据,一般是用于描述用户管理员的信息
roles: [
{ role: "<role>", db: "<database>" } | "<role>", # 如果是role就是直接指定了角色,并作用于当前的数据库
...
] # roles是必传项,但是可以指定空数组,为空就是不指定任何权限
}
use products # mongoDB的权限设置是以库为单位的,必选要先选择库
db.createUser(
{ "user" : "accountAdmin01",
"pwd": "cleartext password",
"customData" : { employeeId: 12345 },
"roles" : [ { role: "clusterAdmin", db: "admin" },
{ role: "readAnyDatabase", db: "admin" },
"readWrite"
] },
{ w: "majority" , wtimeout: 5000 } ) # readWrite 适用于products库,clusterAdmin与readAnyDatabase角色适用于admin库
mac测试环境多版本php添加mongo报错 php.h file not fond
# cp -r /Library/Developer/Command LineTools/SDKs/MacOSX10.12.sdk/usr/i nclude /Applications/MAMP/bin/php/ph p5.6.10/
# brew install pcre
# sudo ./pecl install mongodb
nginx 重写443全局生效的两种方式
在server中新开起一个000-http2https.conf虚拟主机
server {
listen 80;
server_name _;
return 301 https://$HOST$request_uri;
}
#server {
# listen 80;
# server_name test.com;
# rewrite ^(.*)$ https://$host$1 permanent;
#
#}
nginx 临时返回一个值或一个地址
location /rjyy {
return 'https://rjyy.ssjinyao.com' ;
}
location /nene {
return 'https://nene.ssjinyao.com' ;
}
location /sange.html {
return 200 '<h1>mei tou nao a</h1>' ;
}
ssh不能key登录
查看.ssh 与 authorized_keys的权限
查看/etc/ssh配置问题
AuthorizedKeysFile %h/.ssh/authorized_keys
允许HTTP上传文件,并设定大小
vim /etc/php.ini
file_uploads = on; 是否允许通过HTTP上传文件的开关。默认为ON即是开;
upload_tmp_dir; 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹;
post_max_filesize = 8m; 允许上传文件大小的最大值。默认为2M;
post_max_size 8m; 指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M;
gitlab-ci 持续化发布平台
# gitlab-ci 认证是一坑,版本不兼容的话一直会认证失败的,gitlab-ci 与gilab 可以不在同一台服务器;
# 但是可以堡垒机放在同一台服务器上;
# apt-get install gitlab-ci-multi-runner=1.10.2
# gitlab-ci-multi-runner register
http://xxx.xx.xxx.xxx:8080/ci
如果是建立公共runner,则需要以root登录gitlab --> root --> Admin Area --> Ruuners -> 可以查看到变红的koen
deploy
shell
shell
便可以添加上了
在指定分支中添加.gitlab-ci.yml ,如test分支
before_script:
- cd /xxxxx/xxxx/deploy_ci
job:
only:
- test
tags:
- inner
script:
- /usr/bin/fab -f xx-deploy.py xxxxxx:test,0
关于python 部署的坑
# 项目目录 /root/text/
# 需要执行的代码 /root/text/poor/fober.py
# config 配置文件 /root/text/config/config.py
共两种解决方式
1. 添加v.pth 在ENV中
# virtualenv /root/text/ENV
# vim /root/text/ENV/lib/python2.7/site-packages/v.pth
/root/text
2. 在调用config前,定义好目录
# sys.path.append('/root/text/')