初始设置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客户端进行登录。
2 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重启
初始设置ubuntu 16.04 Vps部署rails的更多相关文章
- 设置Ubuntu 16.04 LTS的Unity启动器的位置命令
将Ubuntu 16.04 LTS的Unity启动器移动到桌面底部命令:gsettings set com.canonical.Unity.Launcher launcher-position Bot ...
- Ubuntu 16.04.5部署Django环境
1.安装python环境 使用如下命令安装的是3.5.x版本 sudo apt-get install python3-pip 如果使用下面的命令,会安装2.x版本的python sudo apt-g ...
- Ubuntu 16.04 下部署Node.js+MySQL微信小程序商城
转载于这篇文章 关于pm2看这篇文章 最近在研究小程序,申请了域名之后,再一次来配置环境,根据作者的步骤基本上完成了网站的架构,但由于环境路径等不同,配置上会有所不同,因此记录下来. 1.更新系统和安 ...
- VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面)
本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...
- VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具)
本文主要是讲解如果理由VNC实现Windows远程访问Ubuntu 16.04,其实网上有很多类似教程,但是很多需要安装第三方桌面(xfce桌面等等),而且很多人不太喜欢安装第三方桌面,很多人像笔者一 ...
- 用 runcloud.io 免费部署、优化管理你的多个VPS( 目前支持 Ubuntu 16.04 )
使用RunCloud.io轻松实现Web部署 使用VPS.云服务器,通常会安装基本的操作系统,之后必须自己安装Apache,MySQL,PHP,尤其是服务器的性能优化,这对大多数人来说可能是非常具有挑 ...
- ASP .Net Core系统部署到Ubuntu 16.04 具体方案
.Net Core 部署到Ubuntu 16.04 中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2.0) 3.Supervisor(进程管理工具,目的是服务 ...
- 使用 Visual Studio 部署 .NET Core 应用 ——.Net Core 部署到Ubuntu 16.04
.Net Core 部署到Ubuntu 16.04 中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk-2.0) 3.Supervisor(进程管理工具,目的是服务 ...
- Ubuntu 16.04 LTS设置屏幕分辨率并永久保存所设置的分辨率
一.问题: 1.新装完Ubuntu 16.04 LTS后,进入系统打开命令行窗口,界面的分辨率显示是最小的: 2.进入System settings-->Displays 设置屏幕分辨率 显示& ...
随机推荐
- postgresql的日志实现机制
1.事务的概念 事务是从实际生活中引入数据库的一个概念,即事务内的操作,要么全做,要么全不做.就像银行转账一样,当从一个帐户转出一部分钱之后,就必须在另一个帐户中存入相同数目的钱,若是转出钱之后, ...
- Buffer Pool--锁定内存页
锁定内存页在数据库中的优点和缺点: SQL Server 使用VirtualAlloc来分配内存,无内存压力时,SQL Server会尽可能地申请内存来缓存数据,当内存出现压力时,会出现缓存数据频繁地 ...
- Caffe任务池GPU模型图像识别
一开始我在网上找demo没有找到,在群里寻求帮助也没有得到结果,索性将网上的易语言模块反编译之后,提取出对应的dll以及代码,然后对照官方的c++代码,写出了下面的c#版本 /*** * @pName ...
- .net图表之ECharts随笔08-bar柱状图
之前一直都是跟着修改demo,感觉用得很吃力,现在结合上配置手册就好很多了,其实说到底就是参数的配置,所以配置手册尤为重要. 当然,这其中还是很多坑,希望可以找到对应的解决方案吧!!! 1. tool ...
- django drf Token验证
https://www.django-rest-framework.org/api-guide/authentication/#basicauthentication 1.INSTALLED_APPS ...
- Webpack vs Rollup
本文由作者余伯贤授权网易云社区发布. 2017年4月份的时候,Facebook将React的构建工具换成了Rollup.很多人就有疑问了,Webpack不也是Facebook团队开发的吗,为什么不使用 ...
- Android Dialog 的一些特性
1. Dialog 与 AlertDialog 的区别. AlertDialog 是一种特殊形式的 Dialog.这个类中,我们可以添加一个,两个或者三个按钮,可以设置标题.所以,当我们想使用 Ale ...
- 【Oracle 12c】最新CUUG OCP-071考试题库(53题)
53.(12-14) choose the best answer: Examine the command to create the BOOKS table. SQL>CREATE TABL ...
- “全栈2019”Java第九十四章:局部内部类详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- PHP性能优化四(业务逻辑中使用场景)
php脚本性能,很多时候依赖于你的php版本.你的web server环境和你的代码的复杂度. Hoare曾经说过“过早优化是一切不幸的根源”.当你想要让你的网站更快运转的时候,你才应该去做优化的事情 ...