博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用腾讯云配置小程序Python开发环境
阅读量:6445 次
发布时间:2019-06-23

本文共 4342 字,大约阅读时间需要 14 分钟。

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

购买服务器

之所以选腾讯云的原因很简单,那就是便宜,选用成都区,最低配置每月只需29¥。

在 官网注册登录就可以直接购买服务器了。
服务器系统我选择的是 ubuntu。

服务器配置

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

新建用户

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

sudo su复制代码

使用 adduser 命令创建用户

adduser username # username替换为你自己的用户名复制代码

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

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

usermod -aG sudo username复制代码

关闭ssh密码登录使用密钥登录

安装openssh

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

sudo apt-get updatesudo apt-get install openssh-server复制代码

启动ssh服务

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

sudo su/etc/init.d/ssh start复制代码

使用密钥登录

  • 服务器端生成密钥对:
cd /home/gs # 打开新建的用户目录mkdir .sshcd .sshssh-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 suvim /etc/ssh/sshd_config复制代码

将 PasswordAuthentication yes修改成PasswordAuthentication no

重启系统

sudo sureboot复制代码

搭建开发环境

安装 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  # 安装 pippip install --upgrade pipsudo apt-get install python3-pip  # 安装 pip3pip3 install --upgrade pip复制代码

安装 virtualenv

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

sudo pip3 install virtualenvsudo pip3 install virtualenvwrapper复制代码

在 .zshrc 添加以下内容

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3export WORKON_HOME=$HOME/.virtualenvssource /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 配置使用的是

需要先安装 ctags和 cmake

sudo apt-get install ctagssudo apt-get install cmake复制代码

然后将 py-vim clone 到服务器

git clone https://github.com/gusibi/py-vimcd py-vimsh 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 。

# 创建一个目录,该目录将容纳主要的配置文件Caddyfilesudo mkdir /etc/caddy# 将此目录的所有者更改为root用户及其组到www-data ,以便Caddy可以读取它sudo chown -R root:www-data /etc/caddy# 创建一个空的Caddyfilesudo touch /etc/caddy/Caddyfile# 在/etc/ssl创建另一个目录用来存储自动获得的SSL私钥和证书sudo mkdir /etc/ssl/caddy# 将此目录的所有者更改为root用户及其组到www-datasudo 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-datasudo 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 httpsudo 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    # 启动 caddysudo systemctl restart caddy  # 重启 caddysudo systemctl stop caddy     # 关闭 caddy复制代码

现在启动服务,访问 https://your.domain 应该就能看到数据。

日志文件在 /var/log/caddy/ 目录下。

总结

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

参考链接


最后,感谢女朋友支持。

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

转载地址:http://vrpwo.baihongyu.com/

你可能感兴趣的文章
Request------Response
查看>>
变量输出在window xp下使用eventquery.vbs脚本输出当天电脑每次的启动时间
查看>>
[摘录]高效人士七习惯—重新探索自我
查看>>
CheckBoxList控件选中的选项不能改变
查看>>
编程回调面向对象设计开卷考题A
查看>>
posix多线程有感--线程高级编程(线程和fork,exec)
查看>>
如何通过超链接打开Activity并传入参数
查看>>
在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?
查看>>
nullnullIOS里多态的一些方法
查看>>
PostgreSQL在何处处理 sql查询之三十六
查看>>
Windows Phone Isolated Storage 系列 - 使用XmlSerializer读取和存储XML文件
查看>>
创建FileShare的content source的SharePoint 2013的powershell脚本
查看>>
【iOS开发者必备】APP 图标规格参考表
查看>>
泛型中去掉指定字段重复的数据
查看>>
通过修改CR0寄存器绕过SSDT驱动保护
查看>>
Zen Coding css,html缩写替换大观 快速写出html,css
查看>>
根据复选框后面的描述文字进行选择的技巧
查看>>
asp.net 中将汉字转换成拼音
查看>>
[转]Easy Stored Procedure Output Oracle Select
查看>>
字符串的最长公共子序列问题
查看>>