ECS服务器部署个人项目
- 先嫖个服务器
- 装环境
- 开始准备工作
先嫖个服务器
自己嫖个服务器=>阿里云试用三个月
装环境
1、远程连接=>通过会话管理远程连接=>免密登录=>sudo su 切换成root身份
2、直接装docker,可以参考官方指南,但也只能是参考,很多时候不顶用
3、注意服务器版本,包安装器就不在这里的讨论范围,总之就是换镜像下载
感谢一篇帖子,这里。
不纠结命令细节,总之这是可以用的
sudo yum install -y yum-utils
dnf install -y device-mapper-persistent-data lvm2
dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
dnf list docker-ce
dnf install -y docker-ce --nobest
4、pull镜像,node和nginx
感谢另一篇帖子,这里。
思路还是换源,把这个json写入文件里面去。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://yxzrazem.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
5、下载,没什么好说的
docker pull node
docker pull nginx
开始准备工作
1、准备前端,我是在tmp下新建一个web文件夹存放(已经打包好)文件,以及nginx的公共配置文件,后续项目多了结构就需要相应地改
2、准备后端,在tmp下新建一个node文件夹存放后端代码(直接是代码)
3、为让这一切变得比较直观,我使用cyberduck,
直接新建连接=>选择SFTP(SSH文件传输协议)=>用户名一般是root,密码你看看回阿里云重置实例密码,然后重启=>如果有秘钥就选择秘钥位置=>然后登录。(密钥对就是设置好了,绑定实例,然后保存好,后面也会用到)
4、部署后端,上传代码到node,比如你把代码存在local文件夹下,文件夹里面有src,package.json等文件,然后你就在linux上cd到src同级的目录,使用ll就能看到所有的文件,然后使用下面代码(必须要有dockerfile文件,写好docker要做的事情)(还需要端口设置好事通过哪个端口进入后端服务的)
# 使用 Node.js 官方提供的镜像作为基础镜像
FROM node:latest
# 设置工作目录
WORKDIR /app# 切换到root用户以获得管理员权限
USER root# 将应用程序代码复制到容器中
COPY . .# 安装依赖
RUN npm install# 暴露端口
EXPOSE 5001# 启动应用程序
CMD ["npm", "start"]# FROM node:latest
# WORKDIR /usr/src/app
# COPY ./dist .
# CMD [ "node", "./index.js" ]
然后使用命令
docker build -t my-node-app .
docker run -p 5001:5001 -v /tmp/node/local:/container/path/to/app my-node-app
因为npm实在太久了,先这样吧,后面有空再更新这