docker搭建node环境开发服务器

docker搭建node环境开发服务器

本文章是我自己搭建node环境开发服务器的过程记录,不一定完全适用所有人。根据个人情况,按需取用。

命名项目路径

为了方便cd到项目路径,将项目路径重命名,方便输入。

bash 复制代码
vim /etc/profile # 修改profile文档

export work_code="/disk_ntfs/code/work" # 文档末尾添加路径配置

cd $work_code # 就可以cd路径了,其他配置文件也可以使用路径命名

创建项目文件夹

bash 复制代码
mkdir project

创建Dockerfile文件

在项目文件夹中创建Dockerfile文件。

bash 复制代码
vim Dockerfile

输入文件内容:

bash 复制代码
FROM node # 基础镜像
WORKDIR /code # 工作目录
COPY hosts /etc/hosts_extra # 将hosts文件拷贝到hosts_extra文件,完成hosts配置
RUN apt update && apt install -y openssh-server # 安装ssh服务
RUN echo "PermitRootLogin yes" >> /etc/ssh/sshd_config # 配置ssh服务,可以通过root账号登录
RUN echo "root:password" | chpasswd # 修改root账号密码
RUN mkdir /run/sshd # 防止ssh启动报错:找不到文件

创建docker-compose.yml文件

在项目文件夹中创建docker-compose.yml文件。

bash 复制代码
vim docker-compose.yml

输入文件内容:

bash 复制代码
version: '3' # 指定本yml依从的compose哪个版本制定的
services:
  web:
    build: . # 构建镜像上下文路径
    restart: always # 重启策略
    ports: # 端口映射
      - "10000:5173"
      - "20000:22"
    volumes: # 挂载卷
      - "$work_code/web:/code"
    stdin_open: true # 打开标准输入,可以接受外部输入
    tty: true # 防止docker运行后自动关闭,模拟一个伪终端
    command: # 覆盖容器启动的默认命令,这里是启动ssh服务
      - bash
      - -c
      - |
        /usr/sbin/sshd -D

启动docker容器

bash 复制代码
docker-compose up

配置vscode

打开ssh开发服务器窗口。

配置服务器。


bash 复制代码
Host web # 主机名称,随意
  Hostname xx.xx.xx.xx # 服务器IP地址或者域名
  Port 20000 # ssh端口号
  User root # 用户名

配置完成后,就可以在连接主机时看到这个配置项。

点击打开,并输入之前配置的密码。

可以在文件夹中看到配置的项目文件所在目录了。

相关推荐
qq_589666053 小时前
TypeScript 完整入门教程
前端·javascript·typescript
用户059540174466 小时前
LLM对话记忆测试踩坑实录:手工回归30分钟,自动化后2分钟发现3个隐藏Bug
前端·css
Ashley的成长之路7 小时前
前端性能优化实战手册·第2篇:资源加载策略全解
前端·性能优化·资源加载·http/3·性能优化实战·资源加载优化
浅水壁虎7 小时前
vue基础(第二章 )
前端·javascript·vue.js
界面开发小八哥7 小时前
界面控件DevExtreme v26.1新版亮点——支持Angular 22
前端·javascript·angular.js·devexpress·ui开发·devextreme
Getflare8 小时前
前端 + UI 设计 + AI:这不是三个工种,是一个新三角能力模型(附自检清单)
前端·人工智能·ui
oil欧哟8 小时前
我做了一个 Vibe Coding 术语学习站:VibeHub
前端·ai·agent·独立开发·vibe coding
审小匠OpenCPAi8 小时前
银行流水核查怎么自动化?单边匹配、双向勾稽与图聚类异常检测的工程对比
java·前端·人工智能·python·审计
Revolution619 小时前
一个公共表格组件,是怎么一步步失控的
前端·前端工程化