如何把本地的项目部署到服务器docker应用
·
1. 编写Dockerfile
在你的项目根目录下创建一个名为 Dockerfile 的文件,并添加以下内容:
以meting的项目为例
#使用官方的node.js作为基础镜像
FROM node:23-alpine3.20
#设置工作目录
WORKDIR /app #将/app作为后续指令的默认目录
COPY . /app #复制文件,将本地的项目文件都复制到/app目录下
#构建参数 声明可以在构建时传入的参数
ARG UID #用户ID
ARG GID #组ID
ARG PORT #端口
#环境变量 设置环境变量的默认值
ENV UID=${UID:-1010}
ENV GID=${GID:-1010}
ENV PORT=${PORT:-3000}
#创建一个非root用户来运行应用程序,保证系统安全
RUN addgroup -g ${GID} --system meting \
&& adduser -G meting --system -D -s /bin/sh -u ${UID} meting
#安装项目依赖
RUN npm i
#更改/app目录的所有权为meting用户
#chown 更改所有权
RUN chown -R meting:meting /app
#切换到meting用户(为了系统安全)
USER meting
#暴露应用程序端口 声明容器内的应用要监听哪个端口
EXPOSE ${PORT}
#启动应用程序的命令
CMD ["node", "/app/node.js"]
2. 构建Docker镜像
在终端中导航到项目根目录,然后运行以下命令来构建Docker镜像:
注意不要忘了最后的 “.”
docker build -t meting:2.0 .
#docker 构建镜像 名为meting 版本2.0
3. 保存docker到本地
运行以下命令将镜像保存为一个tar文件:
docker save -o meting2.tar meting:2.0
#docker 保存镜像到本地 -o 指定输出文件名 meting2 镜像名 meting 版本2.0

4. 将tar文件上传到服务器
使用宝塔面板,将tar文件上传到服务器的某个位置
5. 在服务器上加载Docker镜像


找到刚刚上传的tar文件

创建容器


更多推荐
所有评论(0)