Android

วิธีการติดตั้งและกำหนดค่า redmine บน Ubuntu 18.04

Садага болоюн, чырагым, лампочкам деген апа маегинде лампа заводунда иштегенин айтты

Садага болоюн, чырагым, лампочкам деген апа маегинде лампа заводунда иштегенин айтты

สารบัญ:

Anonim

Redmine เป็นหนึ่งในเครื่องมือการจัดการโครงการโอเพนซอร์ซที่ได้รับความนิยมสูงสุดและเป็นเครื่องมือในการติดตามปัญหา มันเป็นแพลตฟอร์มข้ามและฐานข้อมูลข้ามและสร้างขึ้นบนกรอบของ Ruby on Rails

Redmine รวมถึงการสนับสนุนหลายโครงการวิกิระบบติดตามปัญหาฟอรัมปฏิทินการแจ้งเตือนทางอีเมลและอื่น ๆ อีกมากมาย

บทช่วยสอนนี้อธิบายวิธีการติดตั้งและกำหนดค่า Redmine เวอร์ชั่นล่าสุดบนเซิร์ฟเวอร์ Ubuntu 18.04 โดยใช้ MySQL เป็นฐานข้อมูลส่วนหลังและ Passenger + Nginx เป็นเซิร์ฟเวอร์แอปพลิเคชั่น Ruby

ข้อกำหนดเบื้องต้น

ตรวจสอบให้แน่ใจว่าคุณได้ทำตามข้อกำหนดเบื้องต้นต่อไปนี้ก่อนที่จะดำเนินการกับบทช่วยสอนนี้:

  • คุณมีชื่อโดเมนที่ชี้ไปที่ IP สาธารณะของเซิร์ฟเวอร์ของคุณ ในบทช่วยสอนนี้เราจะใช้ example.com คุณเข้าสู่ระบบในฐานะผู้ใช้ที่มีสิทธิ์ sudo คุณมี Nginx ติดตั้งโดยทำตามคำแนะนำเหล่านี้คุณมีใบรับรอง SSL ติดตั้งสำหรับโดเมนของคุณ คุณสามารถติดตั้งใบรับรอง Let's Encrypt SSL ฟรีโดยทำตามคำแนะนำเหล่านี้

สร้างฐานข้อมูล MySQL

Redmine รองรับ MySQL / MariaDB, Microsoft SQL Server, SQLite 3 และ PostgreSQL ในบทช่วยสอนนี้เราจะใช้ MySQL เป็นฐานข้อมูลส่วนหลัง

เข้าสู่ระบบไปยังเปลือก MySQL โดยพิมพ์คำสั่งต่อไปนี้:

sudo mysql

จากภายใน MySQL shell ให้รันคำสั่ง SQL ต่อไปนี้เพื่อสร้างฐานข้อมูลใหม่:

CREATE DATABASE redmine CHARACTER SET utf8mb4;

จากนั้นสร้างบัญชีผู้ใช้ MySQL และให้สิทธิ์การเข้าถึงฐานข้อมูล:

GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password'; ตรวจสอบให้แน่ใจว่าคุณเปลี่ยน change-with-strong-password มีการคาดเดายากด้วยรหัสผ่านที่คาดเดายาก

เมื่อเสร็จแล้วให้ออกจากคอนโซล mysql โดยพิมพ์:

EXIT;

ติดตั้ง Ruby

วิธีที่ง่ายที่สุดในการติดตั้ง Ruby บนระบบ Ubuntu ของคุณคือการใช้ตัวจัดการแพกเกจ apt ในขณะที่เขียนรุ่นในที่เก็บ Ubuntu คือ 2.5.1 ซึ่งเป็น Ruby รุ่นเสถียรล่าสุด

ติดตั้ง Ruby โดยพิมพ์:

sudo apt install ruby-full

การติดตั้งผู้โดยสารและ Nginx

Passenger เป็นเว็บแอพพลิเคชันเซิร์ฟเวอร์ที่รวดเร็วและน้ำหนักเบาสำหรับ Ruby, Node.js และ Python ที่สามารถรวมเข้ากับ Apache และ Nginx ได้ เราจะติดตั้ง Passenger เป็นโมดูล Nginx

ตรวจสอบให้แน่ใจว่าคุณได้ทำตามข้อกำหนดเบื้องต้นและติดตั้ง Nginx ก่อนดำเนินการตามขั้นตอนต่อไปนี้

เริ่มต้นด้วยการติดตั้งแพ็คเกจที่จำเป็น:

sudo apt install dirmngr gnupg apt-transport-https ca-certificates

อิมพอร์ตคีย์ GPG ของที่เก็บและเปิดใช้งานที่เก็บ Phusionpassenger:

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 561F9B9CAC40B2F7 sudo add-apt-repository 'deb https://oss-binaries.phusionpassenger.com/apt/passenger bionic main'

เมื่อเปิดใช้งานพื้นที่เก็บข้อมูล apt แล้วให้อัพเดตรายการแพ็กเกจและติดตั้งโมดูลผู้โดยสาร Nginx ด้วย:

sudo apt update sudo apt install libnginx-mod-http-passenger

การติดตั้ง Redmine บน Ubuntu

เราจะเริ่มต้นด้วยการติดตั้งการพึ่งพาที่จำเป็นในการสร้าง Redmine:

sudo apt install build-essential libmysqlclient-dev imagemagick libmagickwand-dev

ในขณะที่เขียนบทความนี้ Redmine เวอร์ชันเสถียรล่าสุดคือเวอร์ชัน 4.0.0

ก่อนดำเนินการในขั้นตอนต่อไปคุณควรตรวจสอบหน้าดาวน์โหลด Redmine เพื่อดูว่ามีรุ่นที่ใหม่กว่าหรือไม่

1. การดาวน์โหลด Redmine

ดาวน์โหลดไฟล์เก็บถาวร Redmine ด้วยคำสั่ง curl ต่อไปนี้:

sudo curl -L http://www.redmine.org/releases/redmine-4.0.0.tar.gz -o /tmp/redmine.tar.gz

เมื่อการดาวน์โหลดเสร็จสิ้นให้แตกไฟล์เก็บถาวรแล้วย้ายไปยังไดเร็กทอรี /opt :

cd /tmp sudo tar zxf /tmp/redmine.tar.gz sudo mv /tmp/redmine-4.0.0 /opt/redmine

2. การกำหนดค่าฐานข้อมูล Redmine

เริ่มต้นด้วยการคัดลอกไฟล์การกำหนดค่าตัวอย่าง Redmine:

sudo cp /opt/redmine/config/database.yml.example /opt/redmine/config/database.yml

เปิดไฟล์ด้วยโปรแกรมแก้ไขข้อความของคุณ:

sudo nano /opt/redmine/config/database.yml

ค้นหาส่วน production และป้อนฐานข้อมูล MySQL และข้อมูลผู้ใช้ที่เราสร้างขึ้นก่อนหน้านี้:

/opt/redmine/config/database.yml

production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8

เมื่อเสร็จแล้วให้บันทึกไฟล์และออกจากโปรแกรมแก้ไข

3. การติดตั้งการพึ่งพาของ Ruby

นำทางไปยังไดเร็กทอรี redmine และติดตั้งบันเดิลและการพึ่งพา Ruby อื่น ๆ:

cd /opt/redmine/ sudo gem install bundler --no-rdoc --no-ri sudo bundle install --without development test postgresql sqlite

4. สร้างคีย์และย้ายฐานข้อมูล

รันคำสั่งต่อไปนี้เพื่อสร้างคีย์และโอนย้ายฐานข้อมูล:

cd /opt/redmine/ sudo bundle exec rake generate_secret_token sudo RAILS_ENV=production bundle exec rake db:migrate

5. ตั้งค่าการอนุญาตที่ถูกต้อง

Nginx ทำงานเป็นผู้ใช้และกลุ่ม www-data ตั้งค่าสิทธิ์ที่ถูกต้องโดยใช้คำสั่ง chown ต่อไปนี้:

sudo chown -R www-data: /opt/redmine/

กำหนดค่า Nginx

ถึงตอนนี้คุณควรมี Nginx พร้อมติดตั้งใบรับรอง SSL บนระบบของคุณแล้วหากไม่ได้ตรวจสอบข้อกำหนดเบื้องต้นสำหรับบทช่วยสอนนี้

เปิดเท็กซ์เอดิเตอร์ของคุณและสร้างไฟล์บล็อกเซิร์ฟเวอร์ Nginx ต่อไปนี้:

sudo nano /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com

# Redirect HTTP -> HTTPS server { listen 80; server_name www.example.com example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } # Redirect WWW -> NON WWW server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; root /opt/redmine/public; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # log files access_log /var/log/nginx/example.com.access.log; error_log /var/log/nginx/example.com.error.log; passenger_enabled on; passenger_min_instances 1; client_max_body_size 10m; } อย่าลืมแทนที่ example.com ด้วยโดเมน Redmine ของคุณและตั้งค่าเส้นทางที่ถูกต้องไปยังไฟล์ใบรับรอง SSL คำขอ HTTP ทั้งหมดจะถูกเปลี่ยนเส้นทางไปยัง HTTPS ตัวอย่างข้อมูลที่ใช้ในการกำหนดค่านี้สร้างขึ้นในคู่มือนี้

เปิดใช้งานเซิร์ฟเวอร์บล็อกโดยสร้างลิงก์สัญลักษณ์ไปยังไดเรกทอรีที่ sites-enabled :

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

ก่อนที่จะเริ่มบริการ Nginx ทำการทดสอบเพื่อให้แน่ใจว่าไม่มีข้อผิดพลาดทางไวยากรณ์:

sudo nginx -t

หากไม่มีข้อผิดพลาดเอาต์พุตควรมีลักษณะดังนี้:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

สุดท้ายให้เริ่มบริการ Nginx อีกครั้งโดยพิมพ์:

sudo systemctl restart nginx

การเข้าถึง Redmine

เปิดเบราว์เซอร์ของคุณพิมพ์โดเมนของคุณและสมมติว่าการติดตั้งสำเร็จแล้วหน้าจอคล้ายกับที่ปรากฏต่อไปนี้จะปรากฏขึ้น:

เมื่อคุณเปลี่ยนรหัสผ่านคุณจะถูกนำไปที่หน้าบัญชีผู้ใช้

ข้อสรุป

คุณได้ติดตั้ง Redmine บนระบบ Ubuntu เรียบร้อยแล้ว ตอนนี้คุณควรตรวจสอบเอกสาร Redmine และเรียนรู้เพิ่มเติมเกี่ยวกับวิธีกำหนดค่าและใช้ Redmine

อูบุนตู redmine ruby ​​mysql nginx