环境配置
前言
使用 docker 或者 vagrant 配置开发环境更加好。
环境配置
打开终端,按顺序输入如下的命令:
homebrew 安装:
/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
扩展:http://www.brewformulas.org/
数据库安装:
brew install mysql
安装完 mysql 之后,注意建议设置开机自启动,命令如下:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
通过 ps -ef | grep mysql, 查看到有如下的进程,说明 postgresql 在运行: |
501 1845 1 0 三05下午 ?? 0:00.03 /bin/sh /usr/local/opt/mysql/bin/mysqld_safe --bind-address=127.0.0.1 --datadir=/usr/local/var/mysql
501 1980 1845 0 三05下午 ?? 0:58.25 /usr/local/Cellar/mysql/5.6.26/bin/mysqld --basedir=/usr/local/Cellar/mysql/5.6.26 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.26/lib/plugin --bind-address=127.0.0.1 --log-error=/usr/local/var/mysql/xiajiandeMacBook-Pro.local.err --pid-file=/usr/local/var/mysql/xiajiandeMacBook-Pro.local.pid
brew install redis
安装完 redis 之后,注意建议设置开机自启动,命令如下:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
通过 ps -ef | grep redis 查看 redis: |
501 313 1 0 4:23下午 ?? 0:00.34 /usr/local/opt/redis/bin/redis-server 127.0.0.1:6379
注意: redis 的版本必须要要高于 2.8 以上,这是 sidekiq 的需要
个人本地配置的 redis,有可能配置了密码,也有可能没有配置密码, 需要通过如下的命令查看:
cat /usr/local/etc/redis.conf | grep requirepass
oh-my-zsh 安装:
sh -c “$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”
资产编译相关工具的安装:
brew install advancecomp gifsicle jhead jpegoptim jpeg optipng pngcrush pngquant
brew install node # 安装 Node 环境
npm install svgo -g
PS: advancecomp 的官方地址 - http://www.advancemame.it/
imageoptim 安装:
备注 homebrew-cask 升级并内嵌到 homebrew 中,需要运行如下的迁移的命令: brew update; brew cask cleanup; brew uninstall --force brew-cask;
brew cask install imageoptim
测试编译: environments/bin/compile_assets.sh
ruby 环境安装:
rvm 安装:
brew install gpg
gpg –keyserver hkp://keys.gnupg.net –recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
\curl -sSL https://get.rvm.io | bash -s stable |
配置和切换 gem 源:
gem sources –add https://ruby.taobao.org/ –remove https://rubygems.org/
bundle config mirror.https://rubygems.org https://ruby.taobao.org
sed -i .bak -E ‘s!https?://cache.ruby-lang.org/pub/ruby!https://ruby.taobao.org/mirrors/ruby!’ $rvm_path/config/db
参考: https://ruby.taobao.org/
rvm install 2.3.0
cd 创建 可能的相应的目录
git clone xxx.github
cd ../xxx
主要开发分支
cd config && ./lnfs_files.sh {各种环境} && cd ../
gem install bundler && bundle
pngout 的问题
brew cask install imageoptim
操作步骤:
- 第一种方式
将自己本地的 pngout
拷贝给别人,通过 qq? 还是通过 Qiniu 的SDK。
- 第二种方式
首先,locate imageoptim, 到相应的目录:
# 或者其他的目录
cd /opt/homebrew-cask/Caskroom/imageoptim/1.6.0/ImageOptim.app/Contents/Frameworks/ImageOptimGPL.framework/Versions/A/Resources/
for file in $(ls); do
if [[ -e /usr/local/bin/$file ]]; then
echo $file" is exist"
else
echo 'I will link '$file
ln -sf $(pwd)/$file /usr/local/bin/$file
fi
done
部署脚本
部署脚本如下:
function _exec_sh() {
if [[ -f $1 ]]; then
echo '-----------------------------------------'
cat $1
echo '\n-----------------------------------------'
bash $1
fi
}
function _deploy_usage() {
echo "cap函数, 使用方式, deploy [dit|sit|prod] [0|1|2]"
echo "dit - 开发环境,sit - 测试环境,prod - 正式环境"
echo "0 - 冷部署, 1 - 快速部署,2 - 重启, 默认冷部署"
}
# cap部署函数, 获得经验,不要取使用rvm安装获得的gem包的命令行工具同名的函数
# 这样会引起冲突,并使得bash进程崩溃。估计,gem包提供的命令也是以函数的形式存在的
function deploy() {
if [[ $1 == 'kjg' ]]; then
ruby environments/bin/capsh.rb $@
return
fi
cold=environments/bin/cap_deploy_cold_$1.sh
quick=environments/bin/cap_deploy_quick_$1.sh
restart=environments/bin/cap_restart_$1.sh
if [[ $# < 2 ]] ; then
_deploy_usage
_exec_sh $cold
else
case $2 in
0)
echo "执行冷部署,执行脚本为$cold"
_exec_sh $cold
;;
1)
echo "执行快速部署,执行脚本为$quick"
_exec_sh $quick
;;
2)
echo "执行重启,执行脚本为$restart"
_exec_sh $restart
;;
*)
echo "输入参数非法"
_deploy_usage
;;
esac
fi
}
部署方式: deploy sit
。
后记
将这些知识封装成一个 docker 镜像, 搭建自己公司的云计算编排方式。 摆脱那如水的事物的人生。
傲娇的使用Disqus