вторник, 17 июня 2014 г.

Инструкция по правильной Установке/Переносу redmine на ubuntu

сначала материалы по теме
http://redminecrm.com/boards/4/topics/448
http://www.redmine.org/projects/redmine/wiki/RusRedmineUpgrade
http://habrahabr.ru/post/120504/

если вы не root то
sudo su
затем ставим
apt-get install mysql-server libmysqlclient-dev git-core subversion imagemagick libmagickwand-dev libcurl4-openssl-dev curl
curl -L https://get.rvm.io | bash -s stable —ruby=2.0.0
выполняем
source /usr/local/rvm/scripts/rvm
и дописываем в конец файла .bashrc
source /usr/local/rvm/scripts/rvm
устанавливаем apache php5 phpmyadmin
и перенатраиваем на другой порт
по той простой причине что им просто удобней пользоватся

sudo apt-get install apache2 php5 phpmyadmin
правим порты
vim /etc/apache2/ports.conf
NameVirtualHost *:80
Listen 80
заменяем на
NameVirtualHost *:8880
Listen 8880
и правим дефолтную настройку
vim /etc/apache2/sites-available/default
<VirtualHost *:80>
заменяем на
<VirtualHost *:8880>
перезапускаем apache
sudo /etc/init.d/apache2 restart 
заходим в phpmyadmin
http://xxx.xxx.xxx.xxx:8880/phpmyadmin/
создаем базу для redmine
если вы переносите redmine то распакуйте базу из бекапа
и перенесите файлы вложений в католог /var/data/redmine/files
если до этого у вас например был поставлен redmain из репозитория
то ваши файлы ищите здесь
/var/lib/redmine/default/files/
mkdir /var/data
cd /var/data/
svn co http://svn.redmine.org/redmine/branches/2.5-stable redmine
хотя я предпочитаю брать не из svn а из git
git clone https://github.com/redmine/redmine.git redmine
cd /var/data/redmine
cp config/database.yml.example config/database.yml 
vim config/database.yml
правим доступы
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: "pass"
  encoding: utf8

development:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: "pass"
  encoding: utf8
Внимание: логин без кавычек пароль в кавычках
настраеваем отправку почты
cp config/configuration.yml.example config/configuration.yml
vim config/configuration.yml
production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: smtp.{server}.ru
      port: 25
      domain: {server}.ru
      authentication: :login
      user_name: {login}@{server}.ru
      password: {pass}
выполняем bundle (не спутайте bundle c bundler)
bundle install  
иногда редко но по какойто причине не проходит обычно лечится установкой apt-get install {что-то}-dev здесь google в помощь
если увидите чтото типа Could not find gem 'mysql2 (~> 0.3.11) ruby' in the gems available on this machine. (например если выполнете bundle install до конфигурирования базы) то выполните bundle install еще раз
bundle exec rake db:migrate
bundle exec rake generate_secret_token
можно попробовать запустить из под webrick
ruby script/rails s
если напишет что - то типа
[2014-06-17 07:34:08] INFO  WEBrick 1.3.1
[2014-06-17 07:34:08] INFO  ruby 2.0.0 (2014-05-08) [x86_64-linux]
[2014-06-17 07:34:08] INFO  WEBrick::HTTPServer#start: pid=17023 port=3000
пробуем зайти на
http://xxx.xxx.xxx.xxx:3000/
если открылся редмайн то все ок можем продолжать

ctrl+c гасим remine ставим passenger через gem
gem install passenger --no-ri --no-rdoc
запускаем установку (если у вас стоит уже nginx сносите)
passenger-install-nginx-module
Welcome to the Phusion Passenger Nginx module installer, v4.0.45.
выбираем 1 вариант
1. This installer will compile and install Nginx with Passenger support.
Which languages are you interested in?
{enter}
Automatically download and install Nginx?
1. Yes: download, compile and install Nginx for me. (recommended)
Please specify a prefix directory [/opt/nginx]:
{enter}
Nginx with Passenger support was successfully installed.
{enter}
конфигурируем nginx
cd ~ 
git clone git://github.com/jnstq/rails-nginx-passenger-ubuntu.git
mv rails-nginx-passenger-ubuntu/nginx/nginx /etc/init.d/nginx
правим конфигурацию
vim /opt/nginx/conf/nginx.conf
комментим все от server { до его закрывающей скобки } у меня так
#    server {
#        listen       80;
#        server_name  localhost;
#
#        #charset koi8-r;
#
#        #access_log  logs/host.access.log  main;
#
#        location / {
#            root   html;
#            index  index.html index.htm;
#        }
#
#        #error_page  404              /404.html;
#
#        # redirect server error pages to the static page /50x.html
#        #
#        error_page   500 502 503 504  /50x.html;
#        location = /50x.html {
#            root   html;
#        }
#
#        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#        #
#        #location ~ \.php$ {
#        #    proxy_pass   http://127.0.0.1;
#        #}
#
#        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#        #
#        #location ~ \.php$ {
#        #    root           html;
#        #    fastcgi_pass   127.0.0.1:9000;
#        #    fastcgi_index  index.php;
#        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
#        #    include        fastcgi_params;
#        #}
#
#        # deny access to .htaccess files, if Apache's document root
#        # concurs with nginx's one
#        #
#        #location ~ /\.ht {
#        #    deny  all;
#        #}
#    }
и вставляем
server {
  listen  80;
  server_name {ваш сервер};
  root /var/data/redmine/public;
  passenger_enabled on;
  client_max_body_size      10m; # Max attachemnt size
}
sudo /etc/init.d/nginx start
заходим проверяем если нужно перенести redmine
удаляем или переименовываем папку redmine
создаем папку redmine копируем в нее наш редмайн
переносим базу данных
правим доступы к базе vim config/database.yml
правим конфигурацию vim config/configuration.yml
bundle install 
bundle exec rake db:migrate
bundle exec rake redmine:plugins
bundle exec rake generate_secret_token

p.s.
когда я только начинал с этим разбираться я сказал жене что наверно проще родить чем правильно поставить или перенести Redmine она не поверила

Комментариев нет:

Отправить комментарий

PHP: The Right Way блог програмышки
Яндекс.Метрика