阿里云服务器部署前端项目
此项目部署是以vue为例的,并且在MAC系统中
1. 生成公钥和私钥
ls -al cd .ssh 进入.ssh文件中生成公钥和私钥
ssh-keygen -t rsa -C 描述 -f 公钥名称 例如: ssh-keygen -t rsa -C zzfreallyhandsome -f deploy
在.ssh文件中会生成 deploy deploy.pub 两个文件
2. 把公钥拷贝到远端的服务器
cd .ssh
scp deploy.pub root@远端服务器公网:. 例如: scp deploy.pub root@39.102.68.192:. 拷贝到服务器根目录下
拷贝时可能会报错,内容为:The authenticity of host \’39.102.68.192 (39.102.68.192)\’ can\’t be established.
解决方案:
第一种:ssh -o StrictHostKeyChecking=no 39.102.68.192
第二种:
ssh连接The authenticity of host can\’t be established
修改/etc/ssh/ssh_config文件的配置,以后则不会再出现此问题
最后面添加:
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
如何在本地命令窗口验证是否拷贝成功
ssh root@远端服务器公网 例如:ssh root@39.102.68.192
FileZilla for Mac中文版下载地址:https://www.mac69.com/mac/168.html
3. 将公钥写到远端服务器ssh文件的key中
ls -al cd .ssh 发现authorized_keys文件 vim authorized_keys
cat 公钥 >> ~/.ssh/authorized_keys 例如: cat deploy.pub >> ~/.ssh/authorized_keys
4. 将私钥拷贝到github中
settings -> Secrets -> Add a new secret -> Actions -> 选择Node.js,Set up this workflow -> 增加配置,可在右侧搜索ssh deploy
– name: deploy
uses: easingthemes/ssh-deploy@v2.1.2
env:
SSH_PRIVATE_KEY: ${{ secrets.ALIYUN }}
ARGS: “-r1tgoDzvO –delete”
SOURCE: “dist/”
REMOTE_HOST: “39.102.68.192”
REMOTE_USER: “root”
TARGET: “/www/webapp”
最后点击 Start commit 按钮,最后再点击Actions
5. 查看ssh localhost是否运行成功
Ubuntu默认并没有安装ssh服务,如果通过ssh链接Ubuntu,需要自己手动安装openssh-server。判断是否安装ssh服务,若出现ssh: connect to host localhost port 22: Connection refused错误,解决方案如下:
sudo apt-get install openssh-server
其中apt-get安装可参考:https://www.cnblogs.com/zhenfeng95/p/12834635.html
来自https://blog.csdn.net/happygrilclh/article/details/80793606