03-从0到1搭建gitlab CI/CD,CenterOS安装node、nginx、git、docker、添加SSH公钥

65 阅读4分钟

linux 命令

linux 命令参考www.linuxcool.com/

cd / #进入根目录
cd /root #进入根目录
cd /usr
mkdir projects # 创建文件夹"projects"
rmdir projects # 删除文件夹"projects"
rm -rf projects/folder # 轻质删除非空文件夹folder
rm aaa.txt # 删除“aaa.txt”文件
vi aaa.txt # 创建文件“aaa.txt”,并打开编辑器

netstat -tnl # 查看所有被占用的端口号
netstat -anp |grep 4000 # 查看4000端口,获取PID(6848/node)
kill -9 PID  # 杀死进程(KILL -9 6848)

# 编辑完按Esc退出编辑模式此时输入:
:wq # 保存后退出
:wq! # 强制保存后退出
:w # 保存但不退出
:q # 不保存并退出
:q!# 不保存并强制退出
cat aaa.txt # 查看“aaa.txt”文件

安装nvm、node、npm、nrm

# 安装nvm
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
# 安装完成后需要重新打开命令行才会生效
nvm --version # 查看nvm版本
nvm ls-remote # 查看所有的node版本
nvm ls # 查看推荐版本
source /root/.bashrc
# 用nvm安装16.16.0版本的node,
nvm install v16.16.0
nvm use v16.16.0 # nvm切换node版本
node -v # 查看node版本号
npm i nrm -g # 安装nrm
nrm use taobao # nrm使用淘宝源

安装nginx

在命令行执行以下命令

# 安装方式1
yum install nginx # 安装nginx
# 安装方式2
apt update
apt install nginx
# -------------- 以下命令只供参考,不需要执行
cd /etc/nginx # 进入nginx目录
cat nginx.conf # 查看配置文件
# /etc/nginx/conf.d/*.conf; # 这个文件夹下的所有配置文件都会生效
cd /etc/nginx/conf.d # 编写配置文件的地址(这是一个文件夹)
vi wx.config # 创建配置文件
nginx -t # 验证配置文件是否有效
service nginx restart # 重启nginx

/etc/nginx/conf.d目录下的配置文件都会生效

下面是一个nginx配置文件的模板创建文件 wx.conf

include mime.types;
server {
  listen 8001;
  # server_name  wx.kgm0515.top;
  root /usr/frontend/prod;
  location / {
    root /usr/frontend/prod/for-nuxt;
  }
  location /api {
    proxy_pass http://11.111.111.111:3000;
  }
}

安装git

yum install git -y

更新系统

# 初始化服务器,升级所有包同时升级软件和系统内核
yum update
# 只升级所有包,不升级软件和系统内核
yum upgrade

安装 docker

yum install -y yum-utils device-mapper-persistent-data lvm2
# --------------------------
yum-config-manager \
  --add-repo \
  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# --------------------------
yum install -y docker-ce docker-ce-cli containerd.io

docker -v # 安装完成后,检查docker版本

# 下面可以设置阿里云加速---------------------
mkdir -p /etc/docker
# -----------------------------
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://fwvjnv59.mirror.aliyuncs.com"]
}
EOF
# 重载所有修改过的配置文件
systemctl daemon-reload
systemctl restart docker

docker相关命令

sh about-docker-server.sh # 执行sh脚本
systemctl restart docker # 重启docker
docker ps # 查看docker容器
docker ps -a #这将列出所有正在运行的容器。如果你想查看所有容器,无论它们的状态如何(运行、停止等),可以使用 `-a` 或 `--all` 选项:
docker stop containerId # 删除一个docker容器
docker pull hello-world # 测试docker跑通没有
docker rm <container_id_or_name> # 删除单个容器:
docker rm -f <container_id_or_name> # 强制删除正在运行的容器:
docker container prune # 3.  删除所有已停止的容器:
curl http://localhost:3000/api/users # 测试网址是否拼通
# docker  执行pm2报错->curl: (7) Failed to connect to ::1: No route to host
# 1. 没有安装pm2依赖。 在docker中加入:RUN npm install pm2 -g
# 2. 并且在docker中使用pm2需要在命令行加入参数。package.json中修改script: pm2 start ./server.js --no-daemon

# 运行一个docker容器
docker build -t mynode .
docker run -p 3000:3000 mynode

docker安装依赖过程中网络报错:

request to registry.npmjs.org/pm2 failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org

vim /etc/sysctl.conf # 修改文件
net.ipv4.ip_forward = 1 # 修改或者添加这一句话
systemctl restart network # 改完后重启网络

生成/添加 gitee.com 的 SSH 公钥

在电脑或服务器执行此命令,按照提示完成三次回车,即可生成 ssh key。

# ssh-keygen -t rsa -b 4096 -C "498413945@qq.com" //珠峰
ssh-keygen -t ed25519 -C "498413945@qq.com"
# 通过查看 ~/.ssh/id_ed25519.pub 文件内容,获取到你的 public key
cat /root/.ssh/id_ed25519.pub
# 复制生成后的 ssh key,通过 「设置」->「SSH 公钥」->「添加公钥」 ,添加生成的 public key 添加到仓库中。
# ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBR52lW9IbiiyJMoPduuqDpdz09PXh2pRXqOuhexKY+k 498413945@qq.com
# 添加后,在终端(Terminal)中输入(验证配置是否成功)
ssh -T git@gitee.com # 命令行提示:Hi Anonymous! You've successfully authenticated, but GITEE.COM does not provide shell access.