pycharm连接阿里云服务器过程记录

news2024/10/5 21:52:19

因为不想用自己的电脑安装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终端上对服务器进行操作了

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1699569.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 渗透测试:电子邮件 || Redis || FTP || SSH || MySQL 集成爆破工具.

集成爆破工具. 集合爆破里面包含了:电子邮件爆破工具,Redis爆破工具,FTP爆破工具,SSH爆破工具,MySQL爆破工具。 目录: 集合爆破工具. 电子邮件 爆破工具: Redis 爆破工具: FTP …

元组推导式

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 使用元组推导式可以快速生成一个元组,它的表现形式和列表推导式类似,只是将列表推导式中的“[]”修改为“()”。例如&#xf…

Quartus Cyclone I II III IVE 器件型号

玩耍了一个 EP2 型号的开发板,发现 安装的quartus13 没有Cyclone II 型号,经过探索发现了是版本不对。 https://www.intel.com/content/www/us/en/software-kit/711920/intel-quartus-ii-subscription-edition-design-software-version-13-0sp1-for-win…

java欢迪迈手机商城设计与实现源码(springboot+vue+mysql)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的欢迪迈手机商城设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 欢迪迈手机商城…

【JVM】内存区域划分 | 类加载的过程 | 双亲委派机制 | 垃圾回收机制

文章目录 JVM一、内存区域划分1.方法区(1.7之前)/ 元数据区(1.8开始)2.堆3.栈4.程序计数器常见面试题: 二、类加载的过程1.类加载的基本流程1.加载2.验证3.准备4.解析5.初始化 2.双亲委派模型类加载器找.class文件的过…

智能无网远控再升级 向日葵Q2Pro升级版发布

无网或者内网设备也想要进行远程控制,是不是听上去有些天方夜谭了?其实这类特种设备的远程控制需求是非常强的,比如医疗/工控设备的远程运维、使用指导教学等等。 实际上,只要这类设备有屏幕,支持可视化的桌面操作&am…

JVM学习-Class文件结构①

字节码文件的跨平台性 Java语言:跨平台的语言(Write Once,Run Anywhere) 当Java源代码编译成字节码后,如果想在不同平台上运行,则无须再次编译这上优势不再那么吸引人,Python,PHP,Ruby,Lisp等有强大的解释器跨平台似乎已经成为一…

c语言:模拟strlen(三种方法)最全版本

1.计数的方法 #include <stdio.h> #include <assert.h> int my_strlen(const char * str)//const的使用优化 {int count0;assert(str)while(*str){count;str;}return count; } 2.用指针的方法&#xff08;指针-指针&#xff09; #include <stdio.h> #incl…

ML307R OpenCPU 数据保存文件系统fs使用

一、函数介绍 二、实现数据保存 三、代码下载地址 一、函数介绍 以下是cm_fs.h里面的函数介绍 /*** brief 文件指针定位** param [in] fd 文件描述符* param [in] offset 指针偏移量* param [in] base 偏移起始点&#xff0c;CM_FS_SEEK_SET&#xff1a;文件开头 CM_FS…

零基础学Java第二十三天之网络编程Ⅱ

1. InetAddress类 用来表示主机的信息 练习&#xff1a; C:\Windows\system32\drivers\etc\ hosts 一个主机可以放多个个人网站 www.baidu.com/14.215.177.37 www.baidu.com/14.215.177.38 www.taobao.com/183.61.241.252 www.taobao.com/121.14.89.253 2. Socket 3.…

vue3和vite实现vue-router4版本路由的配置以及自动生成路由配置

这个是普通的手动路由配置&#xff1a;https://blog.csdn.net/weixin_68658847/article/details/130071101 自动路由配置 创建项目 npm create vitelatest my-vue-app -- --template vue // 或者 yarn create vite my-vue-app --template vue// 安装路由 yarn add vue-route…

WAF几种代理模式详解

WAF简介 WAF的具体作用就是检测web应用中特定的应用&#xff0c;针对web应用的漏洞进行安全防护&#xff0c;阻止如SQL注入&#xff0c;XSS&#xff0c;跨脚本网站攻击等 正向代理 WAF和客户端与网络资源服务器都建立连接&#xff0c;但是WAF 的工作口具有自己的 IP 地址&…

vscode 插件-01基础

翻译 Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code 适用于 VS Code 的中文&#xff08;简体&#xff09;语言包 远程连接 Remote Development Remote Development是vscode的远程编程与调试的插件&#xff0c;使用这个插件可以在很多情况下代替vim…

CentOS 的常见命令

CentOS 是一种广泛使用的 Linux 发行版&#xff0c;特别在服务器环境中。本文将详细介绍 CentOS 中常见的命令&#xff0c;以便帮助用户在操作系统中有效地进行各种操作。下面介绍一下文件和目录操作、用户和权限管理、系统信息查看、软件包管理以及网络配置等方面的命令。 一…

Java 类加载和实例化对象的过程

1. 类加载实例化过程 当我们编写完一个*.java类后。编译器&#xff08;如javac&#xff09;会将其转化为字节码。转化的字节码存储在.class后缀的文件中&#xff08;.class 二进制文件&#xff09;。接下来在类的加载过程中虚拟机JVM利用ClassLoader读取该.class文件将其中的字…

JavaEE初阶多线程 (5)

1.锁的策略 1.1锁的策略是什么 这个锁的策略可以理解为&#xff0c;一种做法&#xff0c;相当于当你遇到锁竞争&#xff0c;加锁解锁&#xff0c;的情况你会怎么做。 乐观锁可以理解为疫情的时候比较乐观就买了最基本的物资&#xff0c; 买的时候非常方便 1.2乐观锁 当效率…

linux的用户管理

新建用户&#xff1a;1.useradd 2.passwd 完成的操作&#xff1a; (1)/etc/passwd添加一行 (2)/etc/shadow添加一行 (3)/etc/group添加一行 (4)创建用户家目录 (5)创建用户邮件文件 例&#xff1a;创建用户jerry&#xff0c;要求: uid:777&am…

Linux系统进程管理

系统进程管理 一、进程概述 1.1 什么是进程&#xff1f;进程管理需要做什么&#xff1f; 进程是已启动的运行实例&#xff0c;进程有以下组成部分&#xff1a; ​ 已分配内存的地址空间 ​ 进程ID ​ 程序的代码 ​ 进程状态 进程管理包括进程调度、中断处理、信号、进程…

基于 vuestic-ui 实战教程

1. 前言简介 Vuestic UI是一个基于开源Vue 3的UI框架。它是一个MIT许可的UI框架&#xff0c;提供了易于配置的现成前端组件&#xff0c;并加快了响应式和快速加载Web界面的开发。它最初于2021年5月由EpicMax发布&#xff0c;这就是今天的Vuestic UI。 官网地址请点击访问 体验…

半年不在csdn写博客,总结一下这半年的学习经历,coderfun的一些碎碎念.

前言 自从自己建站一来&#xff0c;就不在csdn写博客了&#xff0c;但是后来自己的网站因为资金问题不能继续维护下去&#xff0c;所以便放弃了自建博客网站来写博客&#xff0c;等到以后找到稳定&#xff0c;打算满意的工作再来做自己的博客网站。此篇博客用来记录自己在csdn…