create the database and user:
mysql -p
CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on jiradb.* TO jirauser@'localhost' IDENTIFIED BY '***'; flush privileges;
Download the bin file from the website https://www.atlassian.com/software/jira/download
chmod a+x atlassian-jira-software-7.2.2-x64.bin
./atlassian-jira-software-7.2.2-x64.bin
Answer the questions. After installation, you can access JIRA via port 8080.
To connect to MySQL, we need the MySQL connector. Download it:
http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.39.tar.gz
tar - xzvf mysql-connector-java-5.1.39.tar.gz
cp mysql-connector-java-5.1.39/mysql-connector-java-5.1.39-bin.jar /opt/atlassian/jira/lib/
Restart JIRA:
Integrating JIRA with Nginx
Configuring Tomcat
In this example, we want a setup where JIRA can be accessed at the address http://www.atlassian.com/jira (on standard HTTP port 80), while JIRA itself listens on port 8080 with context path /jira.
Set the Context Path
- cd /opt/atlassian/jira
- vim conf/server.xml
<Context docBase="${catalina.home}/atlassian-jira" path="" reloadable="false" useHttpOnly="true">
- Configure the HTTP connectors so we have one serving as a proxy connector and another for troubleshooting. This is done in the same <JIRA-INSTALL>/
conf/server.xmlfile, locate this code segment:<Connector port="8080" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true"/>
- And add the
proxyNameandproxyPortelements (replacing them with the appropriate properties), and another connector below - this is used for troubleshooting to bypass the proxy:<!-- Nginx Proxy Настройки на 80-й порт<Connector port="8080" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true" proxyName="www.atlassian.com" proxyPort="80"/>
Если используем https:<Connector port="8081" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true" proxyName="www.atlassian.com" proxyPort="443" scheme="https" secure="true"/>
<!-- Standard HTTP Connector --><Connector port="8082" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true"/>
Restart JIRA and verify it can be accessed on the base URL (for example http://www.atlassian.com/jira). You may receive some errors about the dashboard being incorrectly configured - we'll fix this in the next section.Configure Nginx- Update the Nginx settings to have the below
server(replacingwww.atlassian.comwith the FQDN andjira-hostnamewith the hostname of the server):server {listen www.atlassian.com:80;server_name www.atlassian.com;location /jira {proxy_set_header X-Forwarded-Host $host;proxy_set_header X-Forwarded-Server $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://jira-hostname:8080/jira;client_max_body_size 10M;}}
By default, Nginx allows attaching files up to 1MB in JIRA. Therefore, the client_max_body_size parameter is required to set the maximum size of attachments that can be uploaded to JIRA. - If configuring SSL, follow the instructions in https://mozilla.github.io/server-side-tls/ssl-config-generator/ to generate the profile.
- If you want to redirect HTTP to HTTPS, the following can be used instead of the above block (remember to replace
www.atlassian.comwith the FQDN):server {listen 80 default_server;listen [::]:80 default_server ipv6only=on;server_name atlassian.com www.atlassian.com;return 301 https://$server_name$request_uri;}
- Update the Nginx settings to have the below
- If configuring SSL, ensure the security config from https://mozilla.github.io/server-side-tls/ssl-config-generator/ is used.
- Restart Nginx.
Test JIRA
- Restart JIRA and verify it can be accessed on the base URL (for example http://www.atlassian.com/jira) and also on port 8081 (e.g.: http://www.atlassian.com:8080/jira).
- For normal operation of JIRA, you will also need to set the base URL accordingly. In this example, the base URL should be set to http://www.atlassian.com/jira.
- Disable GZIP compression as described in Configuring JIRA Options.
