资讯专栏INFORMATION COLUMN

使用腾讯云配置小程序服务端开发环境

ephererid / 2513人阅读

摘要:最近做小程序服务器的配置,这一篇是服务器配置的记录,方便以后安装配置。购买服务器之所以选腾讯云的原因很简单,那就是便宜,选用成都区,最低配置每月只需。在腾讯云官网注册登录就可以直接购买服务器了。

最近做小程序服务器的配置,这一篇是服务器配置的记录,方便以后安装配置。

购买服务器

之所以选腾讯云的原因很简单,那就是便宜,选用成都区,最低配置每月只需29¥。
在 腾讯云 官网注册登录就可以直接购买服务器了。
服务器系统我选择的是 ubuntu。

服务器配置

启动服务后使用新用户(此步骤不是必须)。

新建用户

首先确认使用的是 root 用户登录如果不是使用以下命令切换

sudo su

使用 adduser 命令创建用户

adduser username # username替换为你自己的用户名

接下来的步骤会让你输入密码和个人信息,自己设置就好。

使用usermod 命令将新建的用户添加到 sudo 组。

usermod -aG sudo username
关闭ssh密码登录使用密钥登录 安装openssh

因为是新系统,先执行一下 apt-get update

sudo apt-get update
sudo apt-get install openssh-server
启动ssh服务

可以通过sudo su命令来临时切换到root权限(不是所有的账号都可以切换到root权限,只有在/etc/sudoers文件中符合规则的用户能切换root身份)

sudo su
/etc/init.d/ssh start
使用密钥登录

服务器端生成密钥对:

cd /home/gs # 打开新建的用户目录
mkdir .ssh
cd .ssh
ssh-keygen -b 2048 -t rsa

ssh-keygen的基本用法:

-b后面是指定加密后的字符串长度
-t后面是指定加密算法,常用的加密算法有rsa,dsa等

默认生成的文件如下:

id_rsa.pub  # 公钥文件
id_rsa      # 私钥文件

新建 authorized_keys 文件

将本地机器的 id_rsa.pub 文件内容复制到 authorized_keys 文件

测试使用公钥是否可以登录

ssh name@host  # name 是机器的用户名 host 是机器的地址
关闭ssh密码登录

确认可以通过私钥进行登录后,关闭ssh密码登录。

sudo su
vim /etc/ssh/sshd_config

将 PasswordAuthentication yes修改成PasswordAuthentication no

重启系统

sudo su
reboot
搭建开发环境 安装 zsh

在终端中输入下面命令进行安装:

sudo apt-get install zsh

输入下面命令进行替换zsh替换为你的默认shell:

chsh -s /bin/zsh

重启终端使用 zsh

安装oh-my-zsh

通过curl安装

curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh

通过wget安装

wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh
安装 pip
sudo apt-get install python-pip  # 安装 pip
pip install --upgrade pip
sudo apt-get install python3-pip  # 安装 pip3
pip3 install --upgrade pip
安装 virtualenv

因为我使用 python3 作为开发环境,所以这里使用 pip3

sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper

在 .zshrc 添加以下内容

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

然后执行命令:

source .zshrc

现在可以输入 workon 测试 virtualenvwrapper 是否已经安装成功。

创建虚拟环境
mkvirtualenv py3 -p python3  # -p 参数指定 python 版本

测试虚拟环境

workon py3
安装 ipython

首先进入 py3 虚拟环境

workon py3

使用 pip 安装 ipython

pip install ipython # 安装 ipython 
配置 vim

python vim 配置使用的是 py-vim

需要先安装 ctags和 cmake

sudo apt-get install ctags
sudo apt-get install cmake

然后将 py-vim clone 到服务器

git clone https://github.com/gusibi/py-vim
cd py-vim
sh setup.sh 
使用 Caddy 配置 https

Caddy是一种新的Web服务器,由 go 编写,默认使用 https 协议。caddy 配置简单,容易上手。

安装 caddy 二进制文件

Caddy项目提供了一个安装脚本,可以检索和安装Caddy服务器的二进制文件。 可以执行以下命令直接安装:

curl -s https://getcaddy.com | bash

在安装过程中,脚本将使用sudo获取管理权限,以便将Caddy文件放在系统范围的目录中,因此可能会提示您输入密码。

配置 caddy 必要的目录

Caddy的自动TLS支持和unit文件需要特定的目录和文件权限。 我们将在这一步中创建它们。

首先,创建一个目录,该目录将容纳主要的配置文件Caddyfile 。

# 创建一个目录,该目录将容纳主要的配置文件Caddyfile
sudo mkdir /etc/caddy
# 将此目录的所有者更改为root用户及其组到www-data ,以便Caddy可以读取它
sudo chown -R root:www-data /etc/caddy
# 创建一个空的Caddyfile
sudo touch /etc/caddy/Caddyfile
# 在/etc/ssl创建另一个目录用来存储自动获得的SSL私钥和证书
sudo mkdir /etc/ssl/caddy
# 将此目录的所有者更改为root用户及其组到www-data
sudo chown -R www-data:root /etc/ssl/caddy
# 确保没有人可以通过删除其他人的所有访问权限来读取这些文件。
sudo chmod 0770 /etc/ssl/caddy
# 创建的最终目录是网站的发布目录
sudo mkdir /var/www
# 该目录应由www-data完全拥有。
sudo chown www-data:www-data /var/www
# 创建日志目录
sudo mkdir /var/log/caddy
# 将此目录的所有者更改为root用户及其组到www-data
sudo chown -R www-data:root /var/log/caddy
将 caddy 配置为系统服务

从官方的Caddy存储库下载文件。 curl命令的附加-o参数会将该文件保存在/etc/systemd/system/目录中,并使其对systemd可见。

sudo curl -s https://raw.githubusercontent.com/mholt/caddy/master/dist/init/linux-systemd/caddy.service -o /etc/systemd/system/caddy.service

reload 系统服务

sudo systemctl daemon-reload

将caddy 设置为开机启动

sudo systemctl enable caddy.service

检查 caddy 服务是否已正式加载

sudo systemctl status caddy.service
允许HTTP和HTTPS连接

Caddy使用HTTP和HTTPS协议提供网站,因此我们需要允许访问相应的端口,以便使网路可以从网路获取

sudo ufw allow http
sudo ufw allow https

现在修改caddy 配置 /etc/caddy/Caddyfile

https://your.domain {  # 启用 https
    gzip
    log /var/log/caddy/access.log  # 指定日志目录
    proxy / http://127.0.0.1:8888 {
        header_upstream Host {host}
        header_upstream X-Real-IP {remote}
        header_upstream X-Forwarded-For {remote}
        header_upstream X-Forwarded-Proto {scheme}
    }
}

保存文件,启动 caddy

sudo systemctl start caddy    # 启动 caddy
sudo systemctl restart caddy  # 重启 caddy
sudo systemctl stop caddy     # 关闭 caddy

现在启动服务,访问 https://your.domain 应该就能看到数据。
日志文件在 /var/log/caddy/ 目录下。

总结

小程序开发需要 https,这里我们使用了 caddy 作为 web 服务器。服务器配置好后可以直接存储为镜像,以后可以直接从镜像开启服务,就不再需要配置环境。

参考链接

How To Create a Sudo User on Ubuntu

zsh安装和配置

virtualenvwrapper

py-vim

Install MongoDB Community Edition on Ubuntu

使用 Caddy 替代 Nginx,全站升级 https,配置更加简单

how-to-host-a-website-with-caddy-on-ubuntu-16-04


最后,感谢女朋友支持。

欢迎关注(April_Louisa) 请我喝芬达

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/40940.html

相关文章

  • 热度3年猛增20倍,Serverless&开发的技术架构全解析

    摘要:年月,腾讯云宣布推出总价值超过亿元的小程序云开发资源扶持计划,对超过一百万个小程序开发者提供免费资源扶持,全面助力开发者打造优秀小程序。 『 作为一个不断发展的新兴技术, Serverless 热度的制高点已然到来。』 或许,Google Trends 所显示的 3 年猛增 20 倍的 Serverless 搜索量,可以佐证 Serverless 在整个行业中的火爆程度。 showI...

    alphahans 评论0 收藏0
  • 热度3年猛增20倍,Serverless&开发的技术架构全解析

    摘要:年月,腾讯云宣布推出总价值超过亿元的小程序云开发资源扶持计划,对超过一百万个小程序开发者提供免费资源扶持,全面助力开发者打造优秀小程序。 『 作为一个不断发展的新兴技术, Serverless 热度的制高点已然到来。』 或许,Google Trends 所显示的 3 年猛增 20 倍的 Serverless 搜索量,可以佐证 Serverless 在整个行业中的火爆程度。 showI...

    Eastboat 评论0 收藏0
  • 热度3年猛增20倍,Serverless&开发的技术架构全解析

    摘要:年月,腾讯云宣布推出总价值超过亿元的小程序云开发资源扶持计划,对超过一百万个小程序开发者提供免费资源扶持,全面助力开发者打造优秀小程序。 『 作为一个不断发展的新兴技术, Serverless 热度的制高点已然到来。』 或许,Google Trends 所显示的 3 年猛增 20 倍的 Serverless 搜索量,可以佐证 Serverless 在整个行业中的火爆程度。 showI...

    Charlie_Jade 评论0 收藏0
  • 热度3年猛增20倍,Serverless&开发的技术架构全解析

    摘要:年月,腾讯云宣布推出总价值超过亿元的小程序云开发资源扶持计划,对超过一百万个小程序开发者提供免费资源扶持,全面助力开发者打造优秀小程序。 『 作为一个不断发展的新兴技术, Serverless 热度的制高点已然到来。』 或许,Google Trends 所显示的 3 年猛增 20 倍的 Serverless 搜索量,可以佐证 Serverless 在整个行业中的火爆程度。 showI...

    ZoomQuiet 评论0 收藏0
  • 程序 · 开发

    摘要:课程内容以打造一款拥有天气预报和签到功能的小程序为主线,从基础知识到小程序运行机制,从开发环境搭建到小程序云开发的接口使用调试上线,打通微信小程序开发全流程。 9 月 11 日,微信开发者工具新增小程序「云开发」功能。 showImg(https://segmentfault.com/img/bVbjQLW?w=1000&h=544); 大多数开发者在开发应用时和部署服务时,无论是选择...

    nanchen2251 评论0 收藏0

发表评论

0条评论

ephererid

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<