加密笔记应用 Standard Notes 入门指南

获取有关 Standard Notes 启动和运行的分步说明。
201 位读者喜欢这篇文章。
computer screen

Opensource.com

Standard Notes 是一款简单、加密的笔记应用,旨在让您轻松处理笔记。当您注册免费同步帐户时,您的笔记会自动加密并与您的所有设备无缝同步。

Standard Notes 与其他商业软件解决方案的区别在于两个关键因素

  1. 服务器和客户端都是完全开源的。
  2. 该公司建立在可持续的商业实践之上,并专注于产品开发。

当您将开源与合乎道德的商业实践相结合时,您将获得一款有可能为您服务数十年的软件产品。您开始对产品产生所有权感,而不是感觉自己只是为一家即将首次公开募股的公司进行另一笔交易。 

在本文中,我将描述如何在 Linux 机器上部署您自己的 Standard Notes 开源同步服务器。然后,您将能够将您的服务器与我们发布的 Linux、Windows、Android、Mac、iOS 和 Web 应用程序一起使用。

如果您不想托管自己的服务器,并且已准备好立即开始使用 Standard Notes,则可以使用我们的公共同步服务器。只需访问 Standard Notes 即可开始使用。

托管您自己的 Standard Notes 服务器

在您的 Linux 机器上运行 Standard File Rails 应用程序,并通过 NGINX 或任何其他 Web 服务器公开它。

开始入门

这些说明基于在全新的类似 CentOS 的安装上设置我们的同步服务器。您可以使用 AWSDigitalOcean 等托管服务来启动您的服务器,甚至可以在您自己的机器上本地运行它。

  1. 更新您的系统

    sudo yum update
  2. 安装 RVM (Ruby 版本管理器)

    gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
    
    \curl -sSL https://get.rvm.io | bash -s stable
  3. 在当前会话中开始使用 RVM

    source /home/ec2-user/.rvm/scripts/rvm
  4. 安装 Ruby

    rvm install ruby

    这应该安装最新版本的 Ruby(在撰写本文时为 2.3)。

    请注意,Rails 5 至少需要 Ruby 2.2.2。

  5. 使用 Ruby

    rvm use ruby
  6. 安装 Bundler

    gem install bundler --no-ri --no-rdoc
  7. 安装 mysql-devel

    sudo yum install mysql-devel
  8. 安装 MySQL(可选;您也可以通过 Amazon RDS 使用托管数据库,这是推荐的做法)

    sudo yum install mysql56-server
    sudo service mysqld start
    sudo mysql_secure_installation
    sudo chkconfig mysqld on

    创建一个数据库

    mysql -u root -p
    > create database standard_file;
    > quit;
  9. 安装 Passenger

    sudo yum install rubygems
    gem install rubygems-update --no-rdoc --no-ri
    update_rubygems
    gem install passenger --no-rdoc --no-ri
  10. 如果已安装,请删除系统 NGINX 安装(您将改用 Passenger 的 NGINX)

    sudo yum remove nginx
    sudo rm -rf /etc/nginx
  11. 配置 Passenger

    sudo chmod o+x "/home/ec2-user"
    sudo yum install libcurl-devel
    rvmsudo passenger-install-nginx-module
    rvmsudo passenger-config validate-install
  12. 安装 Git

    sudo yum install git
  13. 为您的服务器设置 HTTPS/SSL(使用 Let'sEncrypt 免费;如果要在 https://app.standardnotes.org 上使用安全客户端,则为必需)

    sudo chown ec2-user /opt
    cd /opt
    git clone https://github.com/letsencrypt/letsencrypt
    cd letsencrypt

    运行设置向导

    ./letsencrypt-auto certonly --standalone --debug

    记下证书的位置,通常为 /etc/letsencrypt/live/domain.com/fullchain.pem

  14. 配置 NGINX

    sudo vim /opt/nginx/conf/nginx.conf

    将此添加到文件底部,最后一个花括号

    server {
        listen 443 ssl default_server;
        ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
        server_name domain.com;
        passenger_enabled on;
        passenger_app_env production;
        root /home/ec2-user/ruby-server/public;
      }
  15. 确保您位于主目录中,并克隆 Standard File ruby-server 项目

    cd ~
    git clone https://github.com/standardfile/ruby-server.git
    cd ruby-server
  16. 设置项目

    bundle install
    bower install
    rails assets:precompile
  17. 为您的环境变量创建一个 .env 文件。Rails 应用程序将在启动时自动加载这些变量。

    vim .env

    插入

    RAILS_ENV=production
    SECRET_KEY_BASE=use "bundle exec rake secret"
    
    DB_HOST=localhost
    DB_PORT=3306
    DB_DATABASE=standard_file
    DB_USERNAME=root
    DB_PASSWORD=
  18. 设置数据库

    rails db:migrate
    
  19. 启动 NGINX

    sudo /opt/nginx/sbin/nginx

    提示:每当您更改环境变量或 NGINX 配置时,都需要重新启动 NGINX

    sudo /opt/nginx/sbin/nginx -s reload
  20. 完成!

使用您的新服务器

现在您的服务器已在运行,您可以将其插入任何 Standard Notes 应用程序并登录。

在 Standard Notes Web 或桌面应用程序上

单击“帐户”,然后单击“注册”。选择“高级选项”,您将看到“同步服务器”字段。在此处输入您服务器的 URL。

在 Standard Notes Android 或 iOS 应用程序上

打开“设置”窗口,在登录或注册时单击“高级选项”,然后在“同步服务器”字段中输入您的服务器 URL。

如需有关 Standard Notes 服务器的帮助或问题,请加入我们的 Slack 群组 中的 #dev 频道,或访问我们的 帮助页面 以获取常见问题解答和其他主题。

User profile image.
对产品和软件充满热情。致力于 Standard Notes,一个安全存放您一生工作成果的地方。

1 条评论

dnf 呢?

Creative Commons License本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
© . All rights reserved.