Общи проблеми при инсталиране и актуализиране на Redmine
Тъй като и Redmine и Easy Redmine са с отворен код и още или по-малко независими от платформата, може да възникне проблеми при инсталиране и ъпгрейд поради различни конфигурации на сървъра, версии на софтуера или инсталирани плъгини. Работим усилено, за да открием най-често срещаните и да ви помогнем при отстраняването им.
При актуализиране на приложението се появява грешка, която съдържа „Имате грешка в синтаксиса на вашия SQL; проверете ръководството, което отговаря на версията на вашия MySQL сървър за правилния синтаксис, който да се използва в близост до ...", която се появява в дневника.
Причина
Това означава, че базата данни е остаряла и не може да работи със заявката, което нашето приложение изпраща към нея. Просто не разбирам.
Решение
Трябва да актуализирате базата данни.
Как да актуализирате базата данни?
Подробно описание в Базата знания.
Инсталирали сте или сте актуализирали Easy Redmine под потребител с недостатъчни права, без да подчертаете нашата силна препоръка в инструкциите (поне веднъж в миналото).
- Коригирайте правата с командите chgrp и chown сравнете настройките на сървъра (напр chgrp -R public_html WWW-данни)
- Изпълнете повторната инсталация пакет EXEC рейк easyproject: инсталиране RAILS_ENV = производство, която ще изчисти кеша (ако я изпълните като root, тя няма да бъде успешна)
- Рестартирайте сървъра
Ако използвате виртуална машина, информирана от Easy Software, изпълнете като потребител лесно:
sudo chown -R лесно / Начало / лесно / ток
(в по-стари машини - sudo chown -R easy /srv/easyredmine/public_html)
sudo chgrp -R лесно / Начало / лесно / ток
(в по-стари машини - sudo chgrp -R easy /srv/easyredmine/public_html)
cd / Начало / лесно / ток
(в по-стари машини - cd /srv/easyredmine/public_html)
пакет EXEC рейк easyproject: инсталиране RAILS_ENV = производство
sudo service puma@your.domain.name рестартирайте
Не забравяйте да зададете правата за всички необходими папки.
Ето няколко съвета какво да направите, ако се сблъскате с 500 грешка.
- Стартирайте Лесна проверка на сървърните изисквания и опитайте да поправите неуспешните валидации
- Направете резервно копие на базата данни
- Изтеглете най-новия пакет от клиентската зона
- Уверете се, че уебсървърът има Пълен достъп публично, файлове, дневник, TMP папки
- Стартирайте сноп инсталиране --without тест развитие
- Стартирайте пакет EXEC рейк easyproject: инсталиране RAILS_ENV = производство
- Рестартирайте приложението на сървъра
- Изтрийте всички плъгини на Redmine от трети страни (също и от базата данни)
- Напишете ни на support@easyredmine.com и прикачете log/production.log
Има много възможни причини за тази грешка. Ето няколко съвета:
- проблем с кеша на браузъра - опитайте да изтриете кеша от браузъра
- проблем с DNS
- проблем с настройките на сървъра
Първо проверете връзката и мрежата си (проверете дали сървърът е достъпен, като използвате командата ping или traceroute). Сървърът на защитната стена.
Ако всичко гореизброено изглежда добре, опитайте да получите някаква информация от nginx error.logs. Проверете nginx error.log на страната на сървъра - /var/log/nginx/error.log
Проверете двойно, че конфигурацията ви на nginx отговаря на стандарта. Стандартната конфигурация на nginx може да бъде намерена тук:
https://www.redmine.org/projects/redmine/wiki/HowTo_configure_Nginx_to_run_Redmine
Пример за конфигурация на nginx (както се използва от Easy Software). Той е много подобен на официалния, само няколко променливи са оптимизирани:
потребителското WWW-данни;
работни_процеси 8;
worker_rlimit_nofile 60000;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
събития {
worker_connections 10240;
# Multi_accept върху;
}
HTTP {
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # не използвам SSLv3 ref: POODLE
включват /etc/nginx/mime.types;
default_type application / octet-stream;
server_names_hash_bucket_size 2048;
access_log /var/log/nginx/access.log;
изпрати файл на;
#tcp_nopush на;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay включен;
send_timeout 1800;
client_body_timeout 1800;
client_header_timeout 1800;
proxy_read_timeout 1800;
client_max_body_size 220m;
fastcgi_buffer_size 64K;
fastcgi_buffers 128 16k;
proxy_max_temp_file_size 0;
types_hash_max_size 4096;
types_hash_bucket_size 128;
proxy_busy_buffers_size 256k;
proxy_buffers 8 256k;
proxy_buffer_size 256k;
gzip на;
gzip_disable "MSIE [1-6] \. (* SV1?!.)";
включва /etc/nginx/conf.d/*.conf;
включва / и т.н. / Nginx / сайтове с активирани / *;
включва / и т.н. / Nginx / сайтове, автоматично / *;
}
Други възможни причини за грешка 502 включват...
Unicorn не работи изобщо, заради
- Недостатъчни разрешения
- Грешна версия на пътническия влак
- Грешна версия на Ruby
- Липсващи камъни
- Счупена файлова система
За да разберете точния проблем, трябва да проверите дневниците за грешки в unicorn или apache + приложение log от Easy Redmine (log/production.log)
Време за изтичане
Ако е конфигурирано кратко време за изчакване, тази грешка ще се появи на:
- големи износи
- претоварване на сървъра
- rake задачи, стартирани от GUI
Лимит на връзките към MySQL
Уверете се, че имате достатъчен брой разрешени връзки към MySQL. Това зависи от броя на потребителите, но трябва да имате поне 100 разрешения.
Тази грешка се появява от версия 2018 1.2 (платформа 04.00 и по-висока).
Грешка по време на инсталиране на ъпгрейд, който съдържа някои от.
[!] Възникна грешка при парсването на `Gemfile`:
[!] Възникна грешка при парсването на `Gemfile`: не може да се зареди такъв файл --
# приставка 'rys-bundler', github: 'easysoftware / rys-bundler', клон: 'master'> Plugin.hook ('rys-gemfile', самостоятелно)
Bundler не може да продължи.
Това се дължи на остарялата версия на инсталатора на Redmine.
решение:
Преди да инсталирате ъпгрейда
$ gem инсталирате redmine-installer
Този проблем се появява, когато използвате суфикс в URL адреса на вашия Easy Redmine, например: https://company.com/easyredmine/
В този случай трябва да се уверите, че имате конфигурирана променлива RAILS_RELATIVE_URL_ROOT към правилния ви суфикс /easyredmine
Bitnami:
- Създайте допълнителен конфигурационен файл config/additional_environment.rb
- config.action_controller.relative_url_root = "/ easyredmine"
- след това компилирайте активите (rake easyproject:install RAILS_ENV=production) и рестартирайте сървъра
Уверете се, че wkhtmltopdf е и работи ( wkhtmltopdf трябва X сървър или друга емулация)
Изпробвайте го, използвайте: "wkhtmltopdf google.com google.pdf"
Добавете към конфигурацията на вашия прокси:
proxy_set_header X-предаден-Прото HTTPS
Проверете конфигурацията Cron. Това е много важно, че рейк задачи са НЕ управлявана от корен. Това ще доведе до провал поради недостатъчно права.
Да речем, че използвате Easy Redmine под потребителското лесно. Командите са:
Виж активните crons кронтаб -u лесно -l
Редактиране кронтаб -u лесно -е
Прилага промени sudo service cron презареждане
Пример за движение Cron всеки 5 минути:
* / 5 * * * * /home/easy/scripts/easy_scheduler.sh &> / dev / null
#! / bin / bash -l
LOG_FILE = "/ Начало / лесно / ток / дневник / easy_scheduler_rake.log"
echo "$ (date '+% Y-% m-% d% H:% M:% S') start rake" >> $ {LOG_FILE}
cd / home / easy / current && bundle exec rake easyproject: планировчик: run_tasks RAILS_ENV = производство >> $ {LOG_FILE}
echo "$ (date '+% Y-% m-% d% H:% M:% S') end rake" >> $ {LOG_FILE}
/home/easy/scripts/easy_scheduler.sh трябва да е изпълним:
sudo chmod + x /home/easy/scripts/easy_scheduler.sh
Не се колебайте да търсите в интернет, по-точно за употреба, за да се създаде Cron на вашия сървър за. Това не е изключително лесно Redmine необходимата функция.
Когато актуализирате Easy Redmine на платформа Windows и се появява грешка ExecJs :: RuntimeError
Всичко, което трябва да направите, е да инсталирайте NODEJS на вашия компютър за правилната актуализация.
Ако инсталацията не е успешна, попълнете ръчно:
$ Актуализация пакет
$ Рейк db: мигрират
$ Рейк redmine: плъгини: мигрират
Уверете се, че уебсървърът ви поддържа реален размер на URL адреса
Уверете се, че НЕ използвайте уебсървър Webrick!
- Уверете се, че имате най-новата версия на уебсървъра и Ruby
- Преконфигурирайте бавните филтриращи заявки, за да показвате по-малко полета
- Нулирайте CRON, за да не се стартира толкова често
- Разгледайте този случай при използване - Ускоряване на Rails без да се докосвате до Ruby кода
- Проверете конфигурацията си - https://www.easyredmine.com/resources/installation/1885-recommended-optimal-configuration-of-easy-redmine-server
Копирайте папката файлове от стария ви Redmine.
Можете да промените местоположението на файловете чрез подразбиране в конфигурационния файл на Redmine или да използвате символна връзка. Локални или облачни мрежови сървъри за прикачени файлове не се препоръчват поради проблеми с надеждността.
Конфигурация:
./config/configuration.yml
# Абсолютен път до директорията, където се съхраняват прикачените файлове.
# По подразбиране на това е директорията 'files' във вашия Redmine.
# Вашият EasyRedmine трябва да има права за четене и запис в тази директория.
# Примери: attachments_storage_path: / VAR / WWW / redmine / файлове
Отстраняване на проблеми:
Ако не можете да отворите покачения файл, вижте ./log/production.log за общи грешки:
Не може да се изпрати прикачен файл, /var/www/redmine/files/2015/08/150805095407_xxx.PNG не съществува или не може да се прочете
ENOENT, Отказан достъп... и т.н.
Уверете се, че вашият уебсървър има пълен достъп до папките публично, файлове, дневник, TMP с публичен достъп.
Новите комитове във вашите репозитори не се отразяват в Easy Redmine, освен ако не са извлечени от приложението. Трябва да зададете уеб кукички на вашия клиент на репозитория (github, gitlab, TortoiseSVN,...) с информация за вашия Easy Redmine.
- Отидете в администрация >> настройки >> репозитории
- Активирайте WS за управление на репозитория
- Генерирайте API ключ
- Запазете
- Отидете на вашия клиент на репозитория
- Добавете webhook
Някак да кажем, че вашият сайт е easyredmine.company.com
За git - https://easyredmine.company.com/ Сис / git_fetcher
или https://easyredmine.company.com/ Сис / git_fetcher? Ключ =[API ключ]
- в зависимост от настройките на клиента, може да се изисква единичен URL или ключът да се въведе в различно поле
За SVN - https://easyredmine.company.com/ Сис / fetch_changesets
или https://easyredmine.company.com/ Сис / fetch_changesets? Ключ =[API ключ]
От точка 5 нататък всичко зависи от клиента на репозитория и не сте запознати с настройките на Easy Redmine. Това е нещо, което трябва да проверите след чиста инсталация или ъпгрейд от Redmine.
При конфигуриране на домейн на вашия Easy Redmine, уверете се, че използвате някой домейн от първо ниво, напр. http://myeasyredmine.com вместо само http://myeasyredmine. Някои браузъри могат да имат проблеми с достъпа до него.
Отидете в Администрация >> Настройки >> Известия по имейл
и проверете дали адресът ОТ е правилен.
Той трябва да бъде същият (или някой от следващия SMTP сървър) като този в конфигурационния файл. В противен случай някои услуги за имейл (gmail, yahoo и др.) могат да изхвърлят известията.
Проверете конфигурацията си според тази статия в базата знания.
За да проверите дали конфигурацията е правилна, опитайте да проверите дали можете да се свържете с пощенския сървър от вашия Easy Redmine сървър, използвайки telnet.
telnet your.domain.here port_number_here (Например: telnet gmail.com 465)
Това ще ви покаже дали наистина можете да се свържете с вашия пощенски сървър или има проблем в конфигурацията на вашия пощенски сървър.
Когато опитате да извършите експортиране на PDF, който дава грешка (или се държи като че нищо не се случи). Производственият доклад би изстрелял грешки, подобни на
Errno :: EPIPE (счупена тръба) или wkhtmltopdf: не може да се свърже с X сървър
Причинени от проблеми с експортиращия компонент wkhtmltopdf
Ето предложените решения.
Безглав сървър
Вземете необходимата версия на wkhtmltopdf от http://wkhtmltopdf.org/downloads.html
Пример (трябва да работите с подробностите в собствената си среда):
- sudo apt-get инсталирате xvfb xauth
- Wget https://bitbucket.org/wkhtmltopdf/wkhtmltopdf/downloads/wkhtmltox-0.13.0-alpha-7b36694_linux-jessie-amd64.deb
- sudo dpkg -i wkhtmltox-0.13.0-alpha-7b36694_linux-jessie-amd64.deb
- sudo apt-get -f инсталирате
- sudo mv / usr / local / bin / wkhtmltopdf / usr / local / bin / xwkhtmltopdf
- echo 'exec xvfb-run -a -s "-screen 0 640x480x16" xwkhtmltopdf "$ @"' | sudo tee / usr / local / bin / wkhtmltopdf> / dev / null
- sudo chmod a + x / usr / local / bin / wkhtmltopdf
Сървър без Headless
- Трябва да имате инсталиран wkhtmltopdf на вашия сървър в PATH
(Apt-get инсталирате wkhtmltox, yum install wkhtmltox)
Трябва да бъде инсталиран в bundler, в противен случай може да не работи следното актуализиране на Easy Redmine - Уверете се, че програмата работи правилно (например стартирайте от конзолата wkhtmltopdf https://easyredmine.com homepage.pdf)
- повторно стартирайте рейк easyproject:install RAILS_ENV=production
- рестартирайте сървъра
Инсталиране на плъгини
- НЕ инсталирайте плъгини като ROOT потребител
- Първо изтрийте всички стари Easy Gantt плъгини, ако такъв съществува (plugins/easy_gantt*)
- Копирайте всички разархивирани плъгини в REDMINE_ROOT/plugins
- В REDMINE_ROOT
Стартирайте: |
$ Bundle install |
- (или актуализация на пакет) |
$ bundle exec rake db: мигрирайте RAILS_ENV = производство |
$ bundle exec rake redmine: plugins: мигриране RAILS_ENV = производство |
След това рестартирайте сървъра.
Изисквания за успешна инсталация
- Версия на Redmine: Съвместим с Redmine 3.2.x, 3.3.x, 3.4.x, 4.x.
- Версия на Ruby: 2.3+ (препоръчително 2.6.)
- Тип база данни: MySQL (препоръчително), PostgreSQL
Следвайте процедурата за инсталиране в #Инсталирай. Проверете дали логът за инсталацията не съдържа грешки. Ако има такава, опитайте да ги решите според описаното или се свържете с support@easyredmine.com с прикачения раздел за грешки от лога.
Инсталиране на Bitnami
Bitnami не е тестван и не е гарантиран. Ако инсталацията се провали, стартирайте ръчно:
Стартирайте: |
$ Актуализация пакет |
$ Рейк db: мигрират |
$ Рейк redmine: плъгини: мигрират |