# nano, . apt-get install nano sudo -y
# , <username> # root. . nano /etc/sudoers # sudo su <username>
sudo apt-get update sudo apt-get install nginx -y
# MySql apt-get install mysql-server mysql-client libmysqlclient-dev # PostgreSQL apt-get install postgresql
# MySql mysql -uroot -p CREATE DATABASE redmine CHARACTER SET utf8; CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost'; exit # PostgreSQL su postgres psql CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'password' NOINHERIT VALID UNTIL 'infinity'; CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine TEMPLATE template0; \q exit
# : libmagickcore-dev libmagickwand-dev . . apt-get install libmagickcore-dev libmagickwand-dev imagemagick build-essential
cd /tmp mkdir redmine cd redmine wget http://www.redmine.org/releases/redmine-3.2.0.tar.gz tar -zxvf ./redmine-3.2.0.tar.gz mv ./redmine-3.2.0 /usr/local/share/redmine
# . apt-get install ruby ruby-dev rubygems libruby # bundler apt-get ruby gem install bundler
nano /usr/local/share/redmine/Gemfile # gem "thin"
cd /usr/local/share/redmine #: PostgreSQL --without PostgreSQL --without mysql bundle install --without development test postgresql sqlite
cp config/database.yml.example config/database.yml mv public/dispatch.fcgi.example public/dispatch.fcgi nano config/database.yml
production: adapter: mysql2 database: redmine host: localhost username: redmine password: "<password_Mysql_redmine_user>" encoding: utf8
rake generate_secret_token
gem install mysql2 # rake generate_secret_token
RAILS_ENV=production rake db:migrate RAILS_ENV=production rake redmine:load_default_data # : rake db:encrypt RAILS_ENV=production
ruby script/rails server webrick -e production
thin install # adduser redmine chown -hR redmine:redmine /usr/local/share/redmine
pid: tmp/pids/thin.pid group: redmine wait: 30 timeout: 30 log: log/thin.log max_conns: 1024 require: [] environment: production max_persistent_conns: 512 servers: 1 daemonize: true user: redmine socket: /tmp/thin.sock chdir: /usr/local/share/redmine
/etc/init.d/thin start # nano /usr/local/share/redmine/logs/thin.0.log
nano /etc/nginx/sites-available/redmine.hostname.ru
# upstream "" thin upstream thin_server { server unix:/tmp/thin.0.sock; } # - server { # server_name redmine.hostname.ru # HTTPS(SSL) listen *:80; # access_log /var/log/nginx/redmine.mihanentalpo.me-access.log; error_log /var/log/nginx/redmine.mihanentalpo.me-error.log; # public root /usr/local/share/redmine/public; # location. " ", # -, thin location / { proxy_redirect off; proxy_set_header Host redmine.mihanentalpo.me; try_files $uri/index.html $uri.html $uri @thin; } # Location , location @thin { proxy_pass http://thin_server; } }
ln -s /etc/nginx/sites-available/redmine.hostname.ru /etc/nginx/sites-enabled/redmine.hostname.ru /etc/init.d/nginx restart
chmod -R 0777 /usr/local/share/redmine/tmp chmod -R 0777 /usr/local/share/redmine/files
Source: https://habr.com/ru/post/278843/
All Articles