mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-16 15:20:13 +01:00
revisions
parent
85d2d6cba2
commit
8565335efc
1 changed files with 29 additions and 35 deletions
|
|
@ -1,8 +1,4 @@
|
|||
# Installing Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 (draft)
|
||||
|
||||
_**document state: draft in-progress**_
|
||||
|
||||
The purpose of this document is describe the installation process for Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 using epel repository, rvm, mysql, apache, and phusion passenger. This is but one method of installing Tracks. I am open to suggestions and constructive criticism.
|
||||
The purpose of this document is to describe the installation process for Tracks 2.2.2 on CentOS 6.5 Minimal x86_64 using epel repository, rvm, mysql, apache, and phusion passenger. This is but one method of installing Tracks, and I am open to suggestions and constructive criticism.
|
||||
|
||||
Build Overview
|
||||
|
||||
|
|
@ -10,18 +6,14 @@ Build Overview
|
|||
1. Prerequisite packages
|
||||
1. User account & sudo
|
||||
1. MySQL database
|
||||
1. Ruby Version Manager
|
||||
1. Ruby Version Manager (rvm)
|
||||
1. Ruby 1.9
|
||||
1. Bundler
|
||||
1. Phusion Passenger
|
||||
1. Tracks 2.2.2
|
||||
1. Apache2
|
||||
1. Done(?)
|
||||
|
||||
Other Considerations
|
||||
1. SELinux Passenger Module
|
||||
1. Phusion Passenger, Rails, & Sub-URIs
|
||||
1. Nginx reverse proxy
|
||||
1. Other Considerations
|
||||
|
||||
## 1. Base operating system
|
||||
|
||||
|
|
@ -37,16 +29,18 @@ Base CentOS Installation Task Overview
|
|||
|
||||
### Obtain media
|
||||
If you are new to Linux or new to CentOS minimal installations, I would advise reviewing all the information at the URL below. Otherwise, scroll down and select the download URL under section 2. We will be using x86_64 version, also, known as 64 bit. The 32 bit version *should* work as well.
|
||||
http://wiki.centos.org/Manuals/ReleaseNotes/CentOSMinimalCD6.5
|
||||
|
||||
Reference: http://wiki.centos.org/Manuals/ReleaseNotes/CentOSMinimalCD6.5
|
||||
|
||||
### Installation
|
||||
Boot from media and, generally, accept the defaults. You have an opportunity to provide time zone, a host name, configure network interfaces, provide DNS IPs, and domain search. If configured at this point, the installation script automatically configures the resulting installation using these settings. It is a time saver, however, I am going to assume either these setting have not been set or changes will be needed.
|
||||
Boot from media and, generally, accept the defaults. You have an opportunity to provide time zone, a host name, configure network interfaces, provide DNS IPs, and domain search. If configured at this point, the installation script automatically configures the resulting installation using these settings. It is a time saver, however, I am going to assume these setting have not been set or changes will be needed.
|
||||
|
||||
You may skip to the section titled "Verify Operation" if you complete all the settings using the installation GUI.
|
||||
You may skip to the section titled "Verify operation" if you completed all the settings using the installation GUI.
|
||||
|
||||
### Basic configuration
|
||||
Network interface settings
|
||||
http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html
|
||||
|
||||
Reference: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html
|
||||
|
||||
The default interface settings will be as follows with the exception that your HWADDR and UUID will differ:
|
||||
```
|
||||
|
|
@ -111,7 +105,7 @@ lo Link encap:Local Loopback
|
|||
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
|
||||
```
|
||||
|
||||
If you are going to use a static IP address, then update ifcfg-eth0 options with values for your network. Note the NM-CONROLLED can be safely ignored ore removed for on CentOS minimal installations, NM or Network Manager is not installed.
|
||||
If you are going to use a static IP address, then update ifcfg-eth0 options with values for your network. Note the NM-CONROLLED can be safely ignored or removed for on CentOS minimal installations, NM or Network Manager is not installed.
|
||||
```
|
||||
[root@localhost ~]# cd /etc/sysconfig/network-scripts
|
||||
[root@localhost network-scripts]# vi ifcfg-eth0
|
||||
|
|
@ -170,7 +164,7 @@ Destination Gateway Genmask Flags Metric Ref Use Iface
|
|||
link-local * 255.255.0.0 U 1002 0 0 eth0
|
||||
```
|
||||
|
||||
Update the "network" file with both the network and fully qualified domain name (FQDN). This will result with a default layer 3 or routing gateway. Note a log off and on or reboot is needed to see 'hostname' updated.
|
||||
Update the "network" file with both the network and your host's fully qualified domain name (FQDN). This will result with a default layer 3 or routing gateway. Note a log off and on or reboot is needed to see 'hostname' updated.
|
||||
```
|
||||
[root@localhost ~]# vi /etc/sysconfig/network
|
||||
|
||||
|
|
@ -221,7 +215,7 @@ Bringing up interface eth0: Determining if ip address 192.168.113.150 is alread
|
|||
```
|
||||
|
||||
### Resolution settings
|
||||
Configure DNS resolution settings. Current setting shown below are a result of using DHCP, initially. Your resolv.conf may differ.
|
||||
Configure DNS resolution settings. Current settings shown below are a result of using DHCP, initially. Your resolv.conf may differ.
|
||||
|
||||
```
|
||||
[root@www ~]# cat /etc/resolv.conf
|
||||
|
|
@ -255,7 +249,7 @@ rtt min/avg/max/mdev = 8.256/9.808/13.490/1.924 ms
|
|||
```
|
||||
|
||||
###Time zone
|
||||
After installation, the default time zone is America/New_York. Changing the time can be done several ways. My preference is to first identify the time zone by listing /usr/share/zoneinfo. For example, /usr/share/zoneinfo/America/Los_Angeles, then update /etc/sysconfig/clock.
|
||||
After installation, the default time zone is America/New_York. Changing the time can be done several ways. My preference is to first identify the time zone by listing `/usr/share/zoneinfo`. For example, `/usr/share/zoneinfo/America/Los_Angeles`, then update `/etc/sysconfig/clock`.
|
||||
```
|
||||
[root@www ~]# cat /etc/sysconfig/clock
|
||||
ZONE="America/New_York"
|
||||
|
|
@ -299,14 +293,12 @@ ZONE="America/New_York"
|
|||
```
|
||||
|
||||
###EPEL
|
||||
EPEL installation steps are as follows:
|
||||
EPEL repository installation steps are as follows:
|
||||
* Install the repository's key, so the package can be verified and trusted.
|
||||
* Installl the repository package for your distribution.
|
||||
* Configure, if desired, the repository configuration files found `/etc/yum.repos.d`.
|
||||
|
||||
Install the repository's key, so the package can be verified and trusted.
|
||||
Installl the repository package for your distribution.
|
||||
Configure, if desired, the repository configuration files found /etc/yum.repos.d.
|
||||
|
||||
|
||||
Install key and package on CentOS 6.5 64 bit
|
||||
For CentOS 6.5 64 bit
|
||||
```
|
||||
# rpm --import http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6
|
||||
# rpm -ivh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
|
||||
|
|
@ -426,9 +418,13 @@ Restart to utilize the new packages and drivers.
|
|||
##2. Prerequisite packages
|
||||
|
||||
Including RVM prerequisites, mysql server, apache, and system-config packages for ease of administration.
|
||||
reference: https://rvm.io/rvm/prerequisites <-- their list is incomplete!
|
||||
|
||||
Reference: https://rvm.io/rvm/prerequisites <-- their list is incomplete!
|
||||
|
||||
Note: sqlite-devel package is required for Tracks and bundler.
|
||||
Note: libxml2-devel, libxslt, and libxslt-devel packagea is required for Tracks, specifically for nokogiri.
|
||||
|
||||
Note: libxml2-devel, libxslt, and libxslt-devel packagea is required for Tracks, specifically, nokogiri.
|
||||
|
||||
Note: httpd-devel and libcurl-devel and dependencies packages are required for passenger.
|
||||
|
||||
```
|
||||
|
|
@ -543,7 +539,7 @@ Is this ok [y/N]:
|
|||
```
|
||||
|
||||
##3. User account & sudo
|
||||
A decision needs to be made to either use root or an user account. In practice, using a dedicated user could decreases the risk of root exploits, however, this assumes you do not granting sudo with wide open privileges (command access) to the user. I am over simplifying, so do some googling and decide for yourself. I will be using a user account named tracks with the intent of removing sudo access after testing is complete.
|
||||
You may use root or an user account to install Tracks. In practice, using a dedicated user could decrease the risk of root exploits, however, this assumes you do not granting sudo with wide open privileges (command access) to the user. I am over simplifying, so do some googling and decide for yourself. I will be using a user account named tracks with the intent of removing sudo access after testing is complete.
|
||||
|
||||
Create user 'tracks'
|
||||
```
|
||||
|
|
@ -555,7 +551,7 @@ Configure tracks user to use 'sudo';
|
|||
# visudo
|
||||
```
|
||||
|
||||
Add the following which essentially gives user tracks root equivalent privileges using sudo.
|
||||
Add the following which essentially gives user tracks root equivalent privileges when using sudo.
|
||||
```
|
||||
tracks ALL=(ALL) ALL
|
||||
```
|
||||
|
|
@ -576,16 +572,14 @@ to
|
|||
PermitRootLogin No
|
||||
```
|
||||
|
||||
For the changes to take effect immediately, or you can wait until next system restart
|
||||
For the changes to take effect immediately, restart sshd.
|
||||
```
|
||||
$ sudo service sshd restart
|
||||
```
|
||||
|
||||
##4. MySQL database
|
||||
|
||||
Initial MySQL configuration.
|
||||
|
||||
Start mysql
|
||||
Start mysqld.
|
||||
```
|
||||
$ sudo service mysqld start
|
||||
```
|
||||
|
|
@ -600,7 +594,7 @@ Enable automatic startup and shutdown; init script.
|
|||
$ sudo chkconfig mysqld on
|
||||
```
|
||||
|
||||
Create a new database, user, and grant privileges. Replace dbuser and <password> with your own values.
|
||||
Create a new database, user, and grant privileges. Replace dbuser and password with your own values.
|
||||
```
|
||||
$ mysql -u root -p
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue