Běžné problémy s instalací a aktualizací Redmine
Vzhledem k tomu, jak Redmine a Easy Redmine jsou Open Source a jsou víceméně nezávislé na platforměNěkteré instalace a upgrade problémy mohou nastat v důsledku různých konfigurací serverových verzích softwaru nebo zásuvných modulů nainstalovaných. Pracujeme těžké sledovat ty nejběžnější, aby vám pomohl s řešením problémů.
Během aktualizace aplikace se zobrazí chybová zpráva obsahující „Máte chybu ve své syntaxi SQL; zkontrolujte příručku, která odpovídá verzi vašeho serveru MySQL, zda máte správnou syntaxi, kterou chcete použít poblíž ... “se objeví v protokolu.
Způsobit
Znamená to, že vaše databáze je zastaralá a nemůže pracovat s požadavkem, který jí zasílá naše aplikace. Prostě tomu nerozumí.
Řešení
Musíte aktualizovat svou databázi.
Jak aktualizovat databázi?
Podrobný popis v Znalostní báze.
Máte nainstalovány nebo aktualizovány Easy Redmine pod uživatelem s nedostatečnými oprávněními, nikoli po naší silné doporučení v instrukce (Alespoň jednou v minulosti).
- Správná oprávnění podle příkazů chgrp a chown Podle nastavení serveru (např. chgrp -R www-Data public_html)
- znovu spustit instalační svazek exec rake easyproject: nainstalovat RAILS_ENV = výroba který bude vymazat mezipaměť (pokud jste jej spustit root, bude ne být úspěšný)
- restart serveru
Pokud používáte virtuální stroj poskytované Easy Software běží pod uživatelem snadný:
sudo chown -R snadné / home / easy / current
(ve starších strojích - sudo chown -R easy / srv / easyredmine / public_html)
sudo chgrp -R snadné / home / easy / current
(u starších strojů - sudo chgrp -R easy / srv / easyredmine / public_html)
cd / home / easy / current
(u starších strojů - cd / srv / easyredmine / public_html)
svazek exec rake easyproject: nainstalovat RAILS_ENV = výroba
restartujte službu sudo puma@vaše.doména
Nezapomeňte nastavit oprávnění pro všechny potřebné složky.
Zde je několik tipů, co můžete udělat, pokud se dostanete do omylu 500.
- běh Snadná kontrola požadavků na server a pokuste se opravit neúspěšné ověření
- zálohování databáze
- stáhnout nejnovější balíček z Klientské zóně
- Ujistěte se, že webový server má Plný přístup veřejnost, soubory, log, tmp Složky
- běh svazek nainstalovat --without vývoj testů
- běh svazek exec rake easyproject: nainstalovat RAILS_ENV = výroba
- restart aplikačního serveru
- smazat Redmine pluginy veškerých 3rd stran (také z databáze)
- napište nám na support@easyredmine.com a připojit log / production.log
Existuje mnoho možných příčin této chyby. Zde je několik tipů:
- mezipaměť prohlížeče problém - zkuste vymazat mezipaměť z prohlížeče
- dns problém
- Problém nastavení serveru
Nejprve zkontrolujte připojení a síť (ověřte, zda je server dosažitelný pomocí příkazu ping nebo traceroute). Strana brány firewall.
Pokud se vše výše zdá v pořádku, zkuste získat nějaké informace z nginx error.logs. Zkontrolujte nginx error.log na straně serveru - /var/log/nginx/error.log
Ještě jednou zkontrolujte, zda konfigurace Nginx odpovídá standardu. Standardní konfigurace Nginx lze nalézt zde:
https://www.redmine.org/projects/redmine/wiki/HowTo_configure_Nginx_to_run_Redmine
Příklad konfigurace Nginx (jak je používán Easy Software). Je to docela podobný oficiální jednoho jsou optimalizované jen několik proměnných:
Uživatel www-dat;
pracovní procesy 8;
worker_rlimit_nofile 60000;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
Události {
worker_connections 10240;
# Multi_accept dále;
}
http {
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # nepoužívejte SSLv3 ref: POODLE
zahrnout /etc/nginx/mime.types;
default_type aplikace / octet-stream;
server_names_hash_bucket_size 2048;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush na;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay zapnuto;
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 zapnuto;
gzip_disable "MSIE [1 6-] \. (* SV1?!).";
zahrnují /etc/nginx/conf.d/*.conf;
include / etc / nginx / sites-povolen / *;
include / etc / nginx / sites-auto / *;
}
Další možné příčiny chyby 502 patří ...
Unicorn neběží vůbec, díky
- nedostatečná oprávnění
- Chybná verze cestujícího
- Chybná verze Ruby
- Chybějící drahokamy
- Broken filesystem
Chcete-li zjistit přesné problém, je třeba zkontrolovat chybové hlášky Unicorn nebo Apache + protokolu aplikací od Easy Redmine (log / production.log)
Timeout
Pokud je nízká časový limit nastaven, bude tato chyba objeví na:
- rozsáhlých vývozů
- přetížení serveru
- rake úkoly spustit z GUI
Limit připojení MySQL
Ujistěte se, že máte k dispozici dostatečný počet povolených připojení k MySQL. Záleží na počtu uživatelů, ale měli byste mít alespoň 100 povoleno.
K této chybě dochází z verze 2018 1.2 (platforma 04.00 a vyšší)
Chyba při instalaci upgradu, která obsahuje některé z následujících chyb.
[!] Byla chyba při analýze `Gemfile`:
[!] Byla chyba při analýze `Gemfile`: nelze načíst takový soubor -
# plugin 'rys-bundler', github: 'easysoftware / rys-bundler', větev: 'master'> Plugin.hook ('rys-gemfile', já)
Bundler nemůže pokračovat.
Je to způsobeno zastaralou verzí instalátoru Redmine.
Řešení:
Před instalací aktualizace
$ gem install redmine-installer
Tyto problémy dochází při použití příponu na Easy Redmine URL, například: https://company.com/easyredmine/
V takovém případě je třeba se ujistit, že máte proměnnou RAILS_RELATIVE_URL_ROOT nakonfigurován tak, aby vaši správnou příponou / easyredmine
BitNami:
- Vytvořit další konfigurační soubor config / additional_environment.rb
- config.action_controller.relative_url_root = "/ easyredmine"
- pak prekompilace aktiva (rake easyproject: nainstalovat RAILS_ENV = výroba) a restartujte server
Ujistit se wkhtmltopdf je nainstalován a běží (wkhtmltopdf vyžaduje X server nebo jinou emulaci)
Otestovat pomocí: "wkhtmltopdf google.com google.pdf"
Přidat do své konfiguraci serveru proxy:
proxy_set_header X-Forwarded-Proto https
Zkontrolujte konfiguraci cron. Je velmi důležité, že úkoly jsou hrábě NENÍ běh root. To způsobí selhání v důsledku nedostatečných oprávnění.
Řekněme, že se systémem Easy Redmine pod uživatelem snadné. Příkazy jsou následující:
Zobrazit aktivní crons crontab -u snadné -l
Editace crontab -u snadné -e
Aplikuj změny sudo service cron reload
Příklad pro spuštění cronu každých 5 minut:
* / 5 * * * * /home/easy/scripts/easy_scheduler.sh &> / dev / null
#! / bin / bash -l
LOG_FILE = "/ home / easy / aktuální / log / easy_scheduler_rake.log"
echo "$ (date '+% Y-% m-% d% H:% M:% S') start rake" >> $ {LOG_FILE}
cd / home / easy / current && bundle exec rake easyproject: scheduler: run_tasks RAILS_ENV = produkce >> $ {LOG_FILE}
echo "$ (date '+% Y-% m-% d% H:% M:% S') end rake" >> $ {LOG_FILE}
/home/easy/scripts/easy_scheduler.sh musí být spustitelný soubor:
sudo chmod + x /home/easy/scripts/easy_scheduler.sh
Neváhejte hledat na internetu pro přesnější manuálu nastavit cron na vašem serveru. Není to výhradně požadováno Easy Redmine funkce.
Pokud jste aktualizaci Easy Redmine na platformě Windows a narazil na chybovým hlášením ExecJs :: RuntimeError
Jediné, co musíte udělat, je instalovat NODEJS v systému pro řádné aktualizace.
Pokud se instalace nezdaří, spusťte ručně:
$ Aktualizace bundle
$ Rake db: migrovat
$ Rake Redmine: plugins: migrovat
Ujistěte se, že webový server podporuje skutečné velikosti URL adresy
Ujistěte se, že jste NOT pomocí Webrick webserver!
- Zkontrolujte, zda máte nejnovější verzi webového serveru a Ruby
- překonfigurovat pomalé filtru dotazů s cílem ukázat méně polí
- Reset CRON nezahájit tak často
- odkazují na této případové studie - Zábradlí zrychlit bez dotyku Ruby kód
- zkontrolujte konfiguraci - https://www.easyredmine.com/resources/installation/1885-recommended-optimal-configuration-of-easy-redmine-server
Zkopírujte soubory složku ze starého Redmine.
Můžete změnit výchozí umístění souborů v konfiguračním souboru Redmine, nebo můžete použít symbolický odkaz. cloud sítě na bázi sklady pro přílohy jsou LAN nebo nedoporučeno kvůli spolehlivost problémy.
Konfigurace:
./config/configuration.yml
# Absolutní cesta k adresáři, kde jsou uloženy přílohy.
# Výchozí je adresář "soubory 've svém Redmine stupni.
# Vaše EasyRedmine instance musí mít oprávnění ke čtení / zápis na tento adresář.
# Příklady: attachments_storage_path: / var / www / Redmine / soubory
Řešení problémů:
Pokud nemůžete otevřít přílohu, viz ./log/production.log za běžných chyb:
Nelze odeslat přílohu, /var/www/redmine/files/2015/08/150805095407_xxx.PNG Neexistuje nebo je nečitelný
ENOENT, Přístup odepřen... Atd
Ujistěte se, že váš webový server má Plný přístup veřejnost, soubory, log, tmp Složky
Nové commitů do svého úložiště se neprojeví v Easy Redmine, pokud nejsou načteny aplikací. Je třeba nastavit webhooks na vašem úložiště klient (GitHub, gitlab, TortoiseSVN, ...) s informacemi o daném stupni Easy Redmine.
- Jít do administrace >> nastavení >> úložiště
- Povolit WS pro správu úložišť
- Generovat klíč API
- Uložit
- Přejděte do svého úložiště klienta
- Přidat webhook
Řekněme, že váš web je easyredmine.company.com
pro git - https://easyredmine.company.com/ Sys / git_fetcher
nebo https://easyredmine.company.com/ Sys / git_fetcher? Key =[Key API]
- V závislosti na nastavení klienta, může to vyžadovat jednu adresu URL nebo klíč do jiného oboru
pro SVN - https://easyredmine.company.com/ sys / fetch_changesets
nebo https://easyredmine.company.com/ Sys / fetch_changesets? Key =[Key API]
Z bodu 5, je to všechno až do úložiště klienta a nesouvisí s nastavením Easy Redmine. To je něco, co je třeba ověřit po čisté instalaci nebo upgrade z Redmine.
Při konfiguraci domény vašeho Easy Redmine, ujistěte se, že použít alespoň první doménu úrovni, například http://myeasyredmine.com místo toho jen http: // myeasyredmine. Některé prohlížeče mohou mít problémy s dosažením.
Přejděte do části Správa >> Nastavení >> E-mailová oznámení
a zkontrolujte, zda je adresa FROM správná.
Mělo by být stejné (nebo přinejmenším ze stejného serveru SMTP) jako v konfiguračním souboru. V opačném případě mohou některé e-mailové služby (gmail, yahoo atd.) Odmítnout oznámení.
Zkontrolujte konfiguraci podle Tento článek ve znalostní bázi.
Chcete-li ověřit, zda je konfigurace správná, zkuste zkontrolovat, zda se může připojit k poštovnímu serveru ze serveru Easy Redmine pomocí protokolu telnet.
telnet your.domain.here port_number_here (Například: telnet gmail.com 465)
Ukáže vám, zda se skutečně můžete připojit k poštovnímu serveru nebo že máte problém s konfigurací poštovních serverů.
Při pokusu o export do PDF, který má za následek chybu (nebo se chová, jako by se nic nestalo). Protokol produkce by obsahoval chybu podobnou
Errno :: EPIPE (Broken pipe) or wkhtmltopdf: nelze se připojit k X serveru
Způsobené problémy s exportováním komponenty wkhtmltopdf
Zde jsou navrhovaná řešení.
Bezhlavý server
Získejte potřebnou verzi wkhtmltopdf od http://wkhtmltopdf.org/downloads.html
Příklad (musíte pracovat s podrobnostmi o svém vlastním prostředí):
- sudo apt-get install 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-alfa-7b36694_linux-jessie-amd64.deb
- sudo apt-get -f nainstalovat
- 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
Pouze server bez hlavy
- Musíte mít wkhtmltopdf nainstalován na serveru PATH
(Apt-get install wkhtmltox, yum install wkhtmltox)
Musí být instalována v Bundler, jinak to nemusí fungovat po aktualizaci Easy Redmine - Ujistěte se, že program pracuje správně (spustit z konzole například wkhtmltopdf https://easyredmine.com homepage.pdf)
- re-run rake easyproject: nainstalovat RAILS_ENV = výroba
- restart serveru
Instalace pluginu
- NEINSTALUJTE pluginy jako uživatel root
- Nejprve odstraňte všechny staré pluginy Easy Gantt, pokud existují (plugins/easy_gantt*)
- Zkopírujte všechny rozbalené pluginy do REDMINE_ROOT/plugins
- V REDMINE_ROOT
Běh: |
$ Svazek nainstalovat |
- (nebo aktualizace balíčku) |
$ bundle exec rake db: migrace RAILS_ENV = produkce |
$ bundle exec rake redmine: pluginy: migrace RAILS_ENV = produkce |
Poté restartujte server.
Požadavky pro úspěšnou instalaci
- Verze Redmine: Kompatibilní s Redmine 3.2.x, 3.3.x, 3.4.x, 4.x., 5.x.
- Ruby verze: 2.3 + (doporučeno 2.6).
- Typ databáze: MySQL (doporučeno), PostgreSQL
Sledujte instalační postup #instalovat, Ověřit, zda instalační protokol neobsahuje žádné chyby. Pokud k tomu dojde, pokuste se jej vyřešit podle popisu, nebo kontaktní support@easyredmine.com s úsekem chyb v protokolu připojeného.
Instalace na Bitnami
BitNami není testován ani není zaručena. Pokud se instalace nezdaří, spusťte ručně:
Běh: |
$ Aktualizace bundle |
$ Rake db: migrovat |
$ Rake Redmine: plugins: migrovat |