在一个裸的Ubuntu server中我做了哪些

简介: 在一个裸的Ubuntu server中我做了哪些

本文是记录笔者在一个裸的Ubuntu server系统中做了哪些东西。主要有安装node环境,nginx,到部署前端项目。


前期准备:瞎折腾系列之树莓派安装/登录


切换用户



添加root用户


sudo passwd root

image.png


切换root用户


su

image.png


切换普通用户


su ubuntu


看一下此时的目录结构

image.png


如果直接用root账户操作,会有误操作的风险。所以一般新建一个用户,并给其root权限。避免翻车~


创建一个新用户:
adduser [username]
添加root权限
usermod -aG sudo cwl

image.png


安装Nginx



我当前没有nginx

image.png

更新软件包 开始的时候用apt update居然被拒绝了,然后尝试加了个sudo才可以,并且还要让我输密码,我不是已经添加到sudo组里面了吗?不太清楚这里的关系

image.png再尝试一遍,还是不得行

image.png

算了,直接用sudo apt update吧。更新完之后就可以安装nginx了。


sudo apt install nginx -y

nginx安装完成image.png

image.png

安装git



安装git之后,我们同步代码就比较方便,不然要用ftp的方式复制代码到线上去。如果用git,直接就可以拉取代码。


sudo apt install git -y

安装完成后,就可以使用git命令

image.png

配置ssh-key,生成公钥

image.png使用cat命令查看公钥并复制到我们的git上去

image.png

image.png

安装node环境



sudo apt install node -y

image.png发现它居然没有node这个包,噢!原来他叫nodejs,出现了相关的版本信息

image.png


sudo apt install nodejs -y

image.png

安装npm


sudo apt install npm -y

设置淘宝镜像


npm config set registry https://registry.npm.taobao.org
npm config get registry

image.png


npm i -g nrm

咋换个源安装nrm管理node版本还不行呢,算了,还是不用淘宝的源了,还是换回去吧。哎,试试手动换源清华源地址

image.png然后


sudo apt-get update && apt-get upgrade

咋换个源还不行了呢,哎,留个坑!换源后404

image.png


部署前端页面



用xftp这个软件来进行文件的上传,但是使用root账号时用户拒绝访问。


image.png

  1. 执行该命令,修改配置文件
    sudo vi /etc/ssh/sshd_config
    点击i切换至编辑模式,找到#Authentication,修改PermitRootLoginPasswordAuthentication参数
    这两个参数如果前面有#,则去除#;如果没有,则添加
    PermitRootLogin yes
    PasswordAuthentication yes
    点击esc,输入:wq,点击Enter
  2. 执行该命令,重启ssh服务
    sudo service ssh restart


登录成功,然后我们可以使用ftp上传文件了

image.png

image.png我这里是直接将dist打包好的文件直接上传了,也可以通过git拉取代码然后直接打包,更厉害的还可以自动化拉取代码,只要我推到git上了,就可以同步更新。笔者以后再尝试。

然后我们修改nginx默认配置文件就好了

image.png


使用FTP工具登录到服务器之后可以看到 sites-enabled 文件夹下默认有一个default,但是上面有一个类似快捷方式的图标,实际上这是一个软链接,链接的文件在 sites-available中。 PS:当我们更改sites-available中的default文件后,会发现sites-enabled中的default文件也同步改变。 我们可以直接修改sites-available的default 来设置第一个站点,我们通过FTP工具把这个文件下载下来修改之后再上传。


这里笔者采用的是最最最简单的部署方式,直接使用的是nginx的默认80端口,只是把资源路径换了一下而已。


server {
  listen 80 default_server;
  listen [::]:80 default_server;
        # dist文件目录
  root /var/www/html/dist;
        # 先匹配index 再匹配index.html .......
  index index.html index.htm index.nginx-debian.html;
  server_name _;
        # 没有对应的路径就是404
  location / {
    # First attempt to serve request as file, then
    # as directory, then fall back to displaying a 404.
    try_files $uri $uri/ =404;
  }
}

配置文件修改完成之后,运行下面三条指令


sudo /usr/sbin/nginx -t # 检查配置是否正确
sudo /usr/sbin/nginx  # 启动服务
sudo /usr/sbin/nginx -s reload # 重新载入配置


访问成功image.png


问题遗留



  1. 使用清华源换源之后还是不太行,不知道为啥子
  2. nginx多个站点部署,怎么在部署大型项目时更加的规范


这周的瞎折腾就到此为止吧,溜了,要去复习计网和写实验报告了,不弄就来不及了(哭了!)


目录
相关文章
|
7月前
|
Ubuntu 安全 Linux
百度搜索:蓝易云【Ubuntu 20.04 安装VNC Server的教程。】
请注意,VNC连接是以明文形式传输数据的,因此建议在安全的网络环境中使用VNC,并设置强密码以确保安全性。
192 1
|
Ubuntu
Ubuntu Server 20.04 LTS下载及安装教程
Ubuntu Server 20.04 LTS下载及安装教程
2664 0
Ubuntu Server 20.04 LTS下载及安装教程
|
Kubernetes 网络协议 Ubuntu
Kubeadm 快速搭建 k8s v1.19.1 集群(Ubuntu Server 20.04 LTS)
安装准备工作安装环境要求:角色 实验环境 生产环境 操作系统 master cpu/内存:2 Core/2G cpu/内存:2 Core/4G linux 内核 4.4+ node cpu/内存:1 Core/2G cpu/内存:4 Core/16G linux 内核 4.4+ 备注 Node:应根据需要运行的容器数量进行配置; Linux 操作系统基于 x86_64 架构的各种 Linux 发行版...
965 2
Kubeadm 快速搭建 k8s v1.19.1 集群(Ubuntu Server 20.04 LTS)
|
6月前
|
存储 缓存 NoSQL
如何解决Ubuntu server 下 Redis安装报错:“You need tcl 8.5 or newer in order to run the Redis test”.
如何解决Ubuntu server 下 Redis安装报错:“You need tcl 8.5 or newer in order to run the Redis test”.
150 0
|
2月前
|
存储 Ubuntu 网络安全
|
5月前
|
Ubuntu 网络安全 虚拟化
【Ubuntu】Win11 VmWare虚拟机安装Ubuntu 22.04.1-server
【Ubuntu】Win11 VmWare虚拟机安装Ubuntu 22.04.1-server
117 1
【Ubuntu】Win11 VmWare虚拟机安装Ubuntu 22.04.1-server
|
8月前
|
消息中间件 网络协议 Ubuntu
Ubuntu安装RabbitMQ server - 在外远程访问【内网穿透】
通过在ubuntu+cpolar+rabbitMQ环境下,实现mq服务端远程访问。
Ubuntu安装RabbitMQ server - 在外远程访问【内网穿透】
|
8月前
|
Ubuntu
树莓派 ubuntu server 22.x 连接无线网络
树莓派 ubuntu server 22.x 连接无线网络
100 0
|
12月前
|
Ubuntu
ubuntu 18.04.3 server 配置IP
采用修改这个文件/etc/network/interfaces ,改ip的方式在ubuntu 18里行不通
123 0
|
12月前
|
Ubuntu Shell