Learn CentOS Part 3 - Exploring the Linux Filesystem
차례:
- 전제 조건
- MySQL 데이터베이스 생성
- 승객 및 Nginx 설치
- 새로운 시스템 사용자 생성
- 루비 설치
- CentOS에 Redmine 설치
- 1. 레드 마인 다운로드
- 2. Redmine 데이터베이스 구성
- 3. Ruby 의존성 설치
- 4. 키 생성 및 데이터베이스 마이그레이션
- Nginx 구성
- SSL을 사용하여 Nginx 구성
- Redmine에 액세스
- 결론
Redmine은 가장 널리 사용되는 오픈 소스 프로젝트 관리 및 문제 추적 소프트웨어 도구 중 하나입니다. 크로스 플랫폼 및 데이터베이스 간이며 Ruby on Rails 프레임 워크 위에 구축되었습니다.
Redmine은 여러 프로젝트, 위키, 이슈 추적 시스템, 포럼, 캘린더, 이메일 알림 등을 지원합니다.
이 튜토리얼에서는 MariaDB를 데이터베이스 백엔드로 사용하고 Passenger + Nginx를 Ruby 애플리케이션 서버로 사용하여 CentOS 7 서버에 최신 버전의 Redmine을 설치하고 구성하는 데 필요한 단계를 설명합니다.
전제 조건
이 학습을 계속하기 전에 다음 전제 조건을 충족하는지 확인하십시오.
- 서버 공용 IP를 가리키는 도메인 이름. 이 자습서에서는
example.com
을 사용합니다. sudo 권한이있는 사용자로 로그인합니다.
소스에서 Redmine 및 Ruby를 빌드하는 데 필요한 패키지를 설치하십시오.
sudo yum install curl gpg gcc gcc-c++ make patch autoconf automake bison libffi-devel libtool
sudo yum install readline-devel sqlite-devel zlib-devel openssl-develh readline glibc-headers glibc-devel
sudo yum install mariadb-devel zlib libyaml-devel bzip2 iconv-devel ImageMagick ImageMagick-devel
MySQL 데이터베이스 생성
Redmine은 MySQL / MariaDB, Microsoft SQL Server, SQLite 3 및 PostgreSQL을 지원합니다. 이 자습서에서는 MariaDB를 데이터베이스 백엔드로 사용합니다.
CentOS 서버에 MariaDB 또는 MySQL이 설치되어 있지 않은 경우 다음 지침에 따라 설치할 수 있습니다.
다음 명령을 입력하여 MySQL 쉘에 로그인하십시오.
sudo mysql
MySQL 셸 내에서 다음 SQL 문을 실행하여 새 데이터베이스를 만듭니다.
CREATE DATABASE redmine CHARACTER SET utf8;
다음으로 MySQL 사용자 계정을 생성하고 데이터베이스에 대한 액세스 권한을 부여하십시오.
GRANT ALL ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'change-with-strong-password';
change-with-strong-password
사용하여
change-with-strong-password
변경을
change-with-strong-password
하십시오.
완료되면 다음을 입력하여 mysql 쉘을 종료하십시오.
승객 및 Nginx 설치
Passenger는 Apache, Nginx와 통합 될 수있는 Ruby, Node.js 및 Python 용의 빠르고 가벼운 웹 애플리케이션 서버입니다. 승객을 Nginx 모듈로 설치합니다.
EPEL 저장소 및 필요한 패키지를 설치하십시오.
sudo yum install epel-release yum-utils pygpgme
sudo yum-config-manager --enable epel
Phusionpassenger 저장소를 사용하십시오.
sudo yum-config-manager --add-repo
리포지토리가 활성화되면 패키지 목록을 업데이트하고 다음을 사용하여 Nginx와 Passenger을 모두 설치하십시오.
sudo yum install nginx passenger passenger-devel
새로운 시스템 사용자 생성
Redmine 인스턴스를 실행할 새 사용자 및 그룹을 작성하십시오. 단순성을 위해 사용자 이름을
redmine
지정합니다.
sudo useradd -m -U -r -d /opt/redmine redmine
nginx
사용자를 새 사용자 그룹에 추가하고 Nginx가 액세스 할 수 있도록
/opt/redmine
디렉토리 권한을 변경하십시오.
sudo usermod -a -G redmine nginx
sudo chmod 750 /opt/redmine
루비 설치
CentOS 리포지토리의 Ruby 버전은 상당히 구식이며 Redmine에서 지원하지 않습니다. RVM을 사용하여 Ruby를 설치합니다.
다음을 입력하여 사용자
redmine
으로 전환하십시오.
sudo su - redmine
GPG 키를 가져오고 RVM을 설치하십시오.
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
curl -sSL https://get.rvm.io | bash -s stable
RVM 소스를 사용하여
rvm
파일을 시작하려면 다음을
rvm
하십시오.
source /opt/redmine/.rvm/scripts/rvm
이제 다음을 실행하여 Ruby를 설치할 수 있습니다.
rvm install 2.5
rvm --default use 2.5
Rbenv를 통해 Ruby를 설치하려면이 안내서를 확인하십시오.
CentOS에 Redmine 설치
이 기사를 작성할 당시 최신 안정 버전의 Redmine은 버전 4.0.1입니다.
다음 단계를 계속하기 전에 Redmine 다운로드 페이지에서 최신 버전이 있는지 확인해야합니다.
redmine
사용자로 다음 단계를 실행하고 있는지 확인하십시오.
1. 레드 마인 다운로드
다음 curl 명령으로 Redmine 아카이브를 다운로드하십시오.
curl -L http://www.redmine.org/releases/redmine-4.0.1.tar.gz -o redmine.tar.gz
다운로드가 완료되면 아카이브를 추출하십시오.
2. Redmine 데이터베이스 구성
Redmine 예제 데이터베이스 구성 파일을 복사하십시오.
cp /opt/redmine/redmine-4.0.1/config/database.yml.example /opt/redmine/redmine-4.0.1/config/database.yml
텍스트 편집기로 파일을여십시오.
nano /opt/redmine/redmine-4.0.1/config/database.yml
production
섹션을 검색하고 이전에 작성한 MySQL 데이터베이스 및 사용자 정보를 입력하십시오.
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "change-with-strong-password" encoding: utf8
완료되면 파일을 저장하고 편집기를 종료하십시오.
3. Ruby 의존성 설치
redmine-4.0.1
디렉토리로 이동하여
redmine-4.0.1
들러 및 기타 Ruby 종속성을 설치하십시오.
cd ~/redmine-4.0.1
gem install bundler --no-rdoc --no-ri
bundle install --without development test postgresql sqlite
4. 키 생성 및 데이터베이스 마이그레이션
다음 명령을 실행하여 키를 생성하고 데이터베이스를 마이그레이션하십시오.
bundle exec rake generate_secret_token
RAILS_ENV=production bundle exec rake db:migrate
Nginx 구성
sudo 사용자로 다시 전환하십시오.
exit
텍스트 편집기를 열고 다음 Nginx 서버 블록 파일을 작성하십시오.
sudo nano /etc/nginx/conf.d/example.com.conf
/etc/nginx/conf.d/example.com.conf
passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; server { listen 80; server_name example.com www.example.com; root /opt/redmine/redmine-4.0.1/public; # 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 도메인으로 바꾸는 것을 잊지 마십시오.
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 서비스를 다시 시작하십시오.
SSL을 사용하여 Nginx 구성
인증서가 생성되면 다음과 같이 도메인 Nginx 구성을 편집하십시오.
sudo nano /etc/nginx/conf.d/example.com.conf
/etc/nginx/conf.d/example.com
passenger_root /usr/share/ruby/vendor_ruby/phusion_passenger/locations.ini; passenger_ruby /opt/redmine/.rvm/gems/default/wrappers/ruby; passenger_instance_registry_dir /var/run/passenger-instreg; # 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/redmine-4.0.1/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로 리디렉션됩니다.
Redmine에 액세스
브라우저를 열고 도메인을 입력하고 설치가 완료되면 다음과 유사한 화면이 나타납니다.
비밀번호를 변경하면 사용자 계정 페이지로 리디렉션됩니다.
결론
CentOS 시스템에 Redmine을 성공적으로 설치했습니다. 이제 Redmine 설명서를 확인하고 Redmine을 구성하고 사용하는 방법에 대해 자세히 알아보십시오.
centos redmine 루비 mysql mariadb nginxcentos 7에서 nagios를 설치하고 구성하는 방법
Nagios는 가장 널리 사용되는 오픈 소스 모니터링 시스템 중 하나입니다. Nagios는 전체 IT 인프라의 인벤토리를 유지하고 네트워크, 서버, 응용 프로그램, 서비스 및 프로세스가 작동하고 실행되도록합니다. 이 튜토리얼에서는 CentOS 7 서버에서 Nagios Core를 설치 및 구성하는 방법에 대해 설명합니다.
CentOS 7에서 Apache를 사용하여 nextcloud를 설치하고 구성하는 방법
Nextcloud는 Dropbox와 유사한 오픈 소스, 자체 호스팅 파일 공유 및 협업 플랫폼입니다. 이 자습서에서는 CentOS 7 시스템에서 Apache를 사용하여 Nextcloud를 설치하고 구성하는 방법을 보여줍니다.
데비안 9에서 Redmine을 설치하고 구성하는 방법
Redmine은 무료 오픈 소스 프로젝트 관리 및 문제 추적 응용 프로그램입니다. 이 튜토리얼에서는 MySQL을 데이터베이스 백엔드로 사용하고 Passenger + Nginx를 Ruby 애플리케이션 서버로 사용하여 Debian 9 서버에서 최신 버전의 Redmine을 설치하고 구성하는 방법을 보여줍니다.