ror 설정 유 니 콘 배치
7282 단어 ror
유 니 콘 설치
gem install unicorn
gemfile
gem 'unicorn'
공정 설명
rails unicorn
unicorn_rails /xxxx/yyyy/zzzz/unicorn.rb rails
nginx , ror
다음은 자세 한 스 크 립 트 부분 입 니 다.
예 를 들 어 저희 가 hello 라 는 ror 프로젝트 가 있어 요.
hello / config 아래 유 니 콘 rb 만 들 기
root_path = File.expand_path '../', File.dirname(__FILE__)
log_file = root_path + '/log/unicorn.log'
err_log = root_path + '/log/unicorn_error.log'
pid_file = '/tmp/unicorn_hello.pid'
old_pid = pid_file + '.oldbin'
socket_file = '/tmp/unicorn_hello.sock'
worker_processes 6
working_directory root_path
listen socket_file, backlog: 1024
timeout 30
pid pid_file
stderr_path err_log
stdout_path log_file
preload_app true
before_exec do |server|
ENV['BUNDLE_GEMFILE'] = root_path + '/Gemfile'
defined?(ActiveRecord::Base) and
ActiveRecord::Base.connection.disconnect!
end
before_fork do |server, worker|
if File.exists?(old_pid) && server.pid != old_pid
begin
Process.kill('QUIT', File.read(old_pid).to_i)
rescue Errno::ENOENT, Errno::ESRCH
puts "Send 'QUIT' signal to unicorn error!"
end
end
defined?(ActiveRecord::Base) and
ActiveRecord::Base.establish_connection
end
hello 프로젝트 밖에서 start 구축hello.sh
#!/bin/sh
UNICORN=unicorn_rails
#
CONFIG_FILE=/home/mmc/Projects/ruby/hello/config/unicorn.rb
case "$1" in
start)
#$UNICORN -c $CONFIG_FILE -E production -D
$UNICORN -c $CONFIG_FILE -D
;;
stop)
kill -QUIT `cat /tmp/unicorn_hello.pid`
;;
restart|force-reload)
kill -USR2 `cat /tmp/unicorn_hello.pid`
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
실행 sh starthello.sh start
마지막 설정 nginx
upstream unicorn {
server unix:/tmp/unicorn_hello.sock fail_timeout=0;
}
server {
listen 80 default deferred;
root /home/mmc/Projects/ruby/hello/;
location ^~ /assets/ {
gzip_static on;
expires max;
add_header Cache-Control public;
}
try_files $uri/index.html $uri @unicorn;
location @unicorn {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://unicorn;
}
error_page 500 502 503 504 /500.html;
client_max_body_size 4G;
keepalive_timeout 10;
}
sudo invoke - rc. d nginx restart 시작
http://127.0.0.1 ror 페이지 를 볼 수 있 을 거 예요.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
irror-홈 라이브러리에 파일을 추가하는 방법여러 가지 이유로 디스크가 비어 있지 않으면 메인 라이브러리에 데이터베이스 파일을 다른 디스크에 추가해야 하는데 미러 서버에 대응하는 문자가 없기 때문에 많은 사람들이 미러를 삭제하고 다시 완비해서 복원하여 미러를 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.