因为不想用自己的电脑安装anaconda环境,所以去查了一下怎么用服务器跑代码,试着用pycharm连接阿里云服务器,参考了很多博客,自己简单配置了一下,记录一下目前完成的流程.
主要是:阿里云服务器的远程登录和安装anaconda,以及怎么用pycharm连接阿里云服务器上的解释器.
小白刚开始学习AI,内容仅供参考,有一些错误以及疏漏之处,敬请谅解!
1.阿里云服务器及远程登录
假设已经购买了阿里云服务器,创建了实例,点击实例名称可以查看到详细信息,我创建的实例选择的是ubuntu18.04系统。
远程登录:点击远程连接->立即登录:
输入用户名(一般为root)和密码:在创建实例时设置的,如果忘记了可以重置密码
重置实例密码:在最开始的查看实例页面,在实例属性中找到重置实例密码
输入新密码后后确认修改,等待出现修改成功页面即可。
登录成功后进入如下界面,就是一个linux的终端
之后可以像操作linux终端一样进行操作了
2.在服务器上安装anaconda,创建虚拟环境
安装详细步骤参考了:https://blog.csdn.net/m0_72838865/article/details/126346296
最后安装完成后可以在终端查看版本:
如果是按照上述的参考步骤安装的话,此时anaconda3文件用该是在根目录下,可以查看一下:
然后可以查看当前已经有的环境:(刚刚安装上的话,现在应该就只有base环境)
进入base环境查看python的版本(应该是python3.7.0):
创建自己的虚拟环境:
如果有自己需要的python版本可以重新创建,很简单就是执行一行语句:
创建环境语句 : conda create -n env_name python=版本号
因为我想要安装tensorflow,要求python版本>=3.7,正好base环境的python满足条件,所以我直接拷贝了base环境作为基础,然后再在拷贝环境里安装tensorflow
拷贝环境语句:conda create -n 新环境名 --clone 旧环境名
拷贝base环境命名为ten_lstm:
conda create -n ten_lstm --clone base
进入ten_lstm环境,安装tensorflow1.14.0,执行以下语句即可:
pip install tensorflow==1.14.0
此处我这里报错:ERROR: Cannot uninstall ‘wrapt’. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
解决方法参考了:https://blog.csdn.net/qq_43506319/article/details/131486904
简单说就是删除wrapt相关的三个文件,然后重新运行安装代码,sucessful安装成功!
可以用pip list查看一下是不是已经有tensorflow了
3.pycharm连接服务器
打开自己电脑上的pycharm(专业版才可以连接远程服务器),点击Tools->Deployment->configuration
点击+,选择SFTP,输入服务器名字(自己取名),点击OK
点击SSH configuration后的…
填写HOST(就是服务器的公网ip),断口默认(22),点击认证方式是password,点击OK
设置完之后,可以点击页面中的Test Connection测试是否可以连接,连接成功会出现successful的弹窗
点击Mappings,填写本地电脑上的项目地址(我直接设置的当前所在项目文件夹)和服务器上目标存放项目的地址(我设置为/root/my_code),设置完结果如下,点击OK
修改解释器为服务器上的解释器:file->settings,可以看到当前的解释器,未设置时默认是本地解释器(可以看到本地是没安装tensorflow的),点击Add interpreter->on ssh
填写HOST(服务器公网ip)以及Username(用户名,在新建实例或者重置实例密码时设置的),点击next,
填写password(密码,在新建实例或者重置实例密码时设置的),点击next
出现以下弹窗,连接成功,点击next
点击existing,设置interpreter(服务器上的python解释器)和地址映射sync folders(本机项目地址和服务器上的目标地址)
在此处我的interpreter选的是刚刚创建的anaconda的环境ten_lstm,路径是/root/anaconda3/envs/bin/python3.7
设置地址映射,就是本地项目地址和服务器上的目标地址,和前面的是一样的
点击create,设置完毕
此时可以看到python interpreter已经被修改了,然后下面会出现我们之前创建的anaconda环境内的包,此时都可以用了。
点击OK,然后测试一下是不是可以用,我主要是测试一下tensorflow可以不可以用,在pycharm中新建python文件,运行以下代码:
hello=tf.constant('already connect!')
sess=tf.Session()
print(sess.run(hello))
#开始敲代码啦!!
如果成功的话,应该输出的就是以下结果:
上传代码到服务器:点击TOOLS->Deployment->upload to root@xxxx
点击TOOLS->Deployment->Browse remote host,可以看到服务器上的文件夹目录,可以看到/root/my_code下已经有上传过去的文件,点击代码文件,可以直接修改服务器上的代码.
另外,点击TOOLS-start ssh session,就可以在pycharm终端上对服务器进行操作了