zoukankan      html  css  js  c++  java
  • 初始设置ubuntu 16.04 Vps部署rails

    参考

    https://blog.longwin.com.tw/2005/12/ssh_keygen_no_passwd/

    1 选择搬瓦工左边菜单栏中的“Root password modification”,然后“Generate and set new root password”,重置前请先把V-P-S关机,否则会重置失败。重置得到的root密码务必记好,因为只会出现这一次。没记下来怎么办?再重置一次。

    得到这些信息后,需要一个SSH客户端进行登录。

    Linux用户

    直接打开终端,输入如下命令:

    ssh -p your-port root@your-ip

    然后输入密码

    3 添加用户

    root@ubuntu#  adduser username

    4添加到sudo组

    root@ubuntu:~# usermod -aG sudo username

    5 生成秘钥

    使用新账号登录

    ssh -p your-port username@your-ip

    6 登陆后

    mkdir .ssh

    7 回到本地机器查看自己的id_rsa.pub,得到后粘贴到vps的 .ssh目录下的authorized_keys里面

    簡單解說一下:

    • id_rsa: private key
    • id_rsa.pub: public key

    將 public key(id_rsa.pub) 拷貝到遠端的電腦後, 加到那 user 的 .ssh/authorized_keys 中.

    之後連線時, 就會用本機的 private key(id_rsa) 與遠端電腦的 public key(authorized_keys) 做認證, 確認完成就可以直接登入, 不需輸入帳號密碼, 而且也比較安全.

    要關閉使用密碼登入, 只允許使用 Key 來做登入, 可修改此檔案的下述兩個參數: vi /etc/ssh/sshd_config

    • PubkeyAuthentication yes
    • PasswordAuthentication no

    8 修改ssh 端口

    vi /etc/ssh/sshd_config 修改 port参数

    这样登入 直接使用 ssh ip

    9 设置local

      vi .bashrc 

       export LC_CTYPE=en_US.UTF-8

       export LC_ALL=en_US.UTF-8

     

    10 安装rvm

    https://www.phusionpassenger.com/library/walkthroughs/deploy/ruby/ownserver/nginx/oss/install_language_runtime.html

    注意 这两个命令要执行

      sudo usermod -a -G rvm `whoami`

    source /etc/profile.d/rvm.sh

    安装ruby 略。。

    12 安装nodejs

    https://github.com/creationix/nvm

    注意添加软连接 :   

    sudo ln -s /home/rudy/.nvm/versions/node/v8.7.0/bin/node /usr/bin/node

    13 安装git

    14安装 passenger

    https://www.phusionpassenger.com/library/walkthroughs/deploy/ruby/ownserver/nginx/oss/xenial/install_passenger.html

    14.1 检测 passnger

    sudo /usr/bin/passenger-config validate-install
    

    15 生成 rails secret key,不使用开发时用的key

    bundle exec rake secret
    拷贝生成的值到 config/secrets.yml的下面位置

    production:
    secret_key_base: 拷贝到这里,删除这里原来内容

    16 可以修改文件权限,防止其他用户访问(可以不修改,酌情)

    chmod 700 config db
    chmod 600 config/database.yml config/secrets.yml

    17 创建nginx配置文件

    sudo vim /etc/nginx/sites-enabled/自己命名.conf

    填入下面内容

    server {
    listen 80;
    server_name vps ip地址;

    # Tell Nginx and Passenger where your app's 'public' directory is
    root /var/www/myapp/code/public;

    # Turn on Passenger
    passenger_enabled on;
    passenger_ruby /path-to-ruby; 使用 passenger-config about ruby-command 得到
    }

    例如

    $ passenger-config about ruby-command
    passenger-config was invoked through the following Ruby interpreter:
    Command: /usr/local/rvm/gems/ruby-2.3.4/wrappers/ruby
    Version: ruby 2.3.4p301 (2017-03-30 revision 58214) [x86_64-linux]
    To use in Apache: PassengerRuby /usr/local/rvm/gems/ruby-2.3.4/wrappers/ruby
    To use in Nginx : passenger_ruby /usr/local/rvm/gems/ruby-2.3.4/wrappers/ruby 这个
    To use with Standalone: /usr/local/rvm/gems/ruby-2.3.4/wrappers/ruby /usr/bin/passenger start

    18 重启 sudo service nginx restart

     19 如果你修改了某些配置不生效,使用 touch tmp/restart.txt重启

  • 相关阅读:
    error_reporting(“E_ALL”)和ini_set(“display_errors”, “on”)的区别?
    linux命令awk的详解
    Ubuntu 能PING IP但不能PING主机域名的解决方法
    从github checkout子文件夹
    zuul简单使用
    docker for windows 10 添加阿里云镜像仓库无效问题
    Spring Boot 进行Bean Validate和Method Validate
    JVM调优-GC参数
    Spring Aop: 关于继承和execution target this @annotation
    ReentrantLock原理
  • 原文地址:https://www.cnblogs.com/or2-/p/7675247.html
Copyright © 2011-2022 走看看