docker搭建node环境开发服务器

docker搭建node环境开发服务器

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

命名项目路径

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

vim /etc/profile # 修改profile文档export work_code="/disk_ntfs/code/work" # 文档末尾添加路径配置cd $work_code # 就可以cd路径了,其他配置文件也可以使用路径命名

创建项目文件夹

mkdir project

创建Dockerfile文件

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

vim Dockerfile

输入文件内容:

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文件。

vim docker-compose.yml

输入文件内容:

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容器

docker-compose up

配置vscode

打开ssh开发服务器窗口。

在这里插入图片描述
配置服务器。

在这里插入图片描述
在这里插入图片描述

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

配置完成后,就可以在连接主机时看到这个配置项。
在这里插入图片描述
点击打开,并输入之前配置的密码。

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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/183942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

展开运算符(...)

假如我们有一个数组: const arr [7,8,9];● 我们如果想要数组中的元素,我们必须一个一个手动的去获取,如下: const arr [7,8,9]; const badNewArr [5, 6, arr[0], arr[1],arr[2]]; console.log(badNewArr);● 但是通过展开运…

回归预测 | MATLAB实现基于LightGBM算法的数据回归预测(多指标,多图)

回归预测 | MATLAB实现基于LightGBM算法的数据回归预测(多指标,多图) 目录 回归预测 | MATLAB实现基于LightGBM算法的数据回归预测(多指标,多图)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 MATLA…

Linux系统编程--文件操作函数

一.常见IO函数 fopen fclose fread fwrite fseek fflush fopen 运行过程 :打开文件 写入数据 数据写到缓冲区 关闭文件后 将数据刷新入磁盘 1.fopen 返回文件类型的结构体的指针 包括三部分 1).文件描述符(整形值 索引到磁盘文件)…

PGSQL(PostgreSQL)数据库安装教程

安装包下载 下载地址 下载后点击exe安装包 设置的data存储路径 设置密码 设置端口 安装完毕,配置PGSQL的ip远程连接,pg_hba.conf,postgresql.conf,需要更改这两个文件 pg_hba.conf 最后增加一行 host all all …

Maven——仓库

Maven坐标和依赖是任何一个构件在Maven世界中的逻辑表示方式;而构件的物理表示方式是文件,Maven通过仓库来统一管理这些文件。 1、何为Maven仓库 在Maven世界中,任何一个依赖、插件或者项目构建的输出,都可以称为构件。例如&…

TCP/IP封装

数据如何通过网络发送?为什么 OSI 模型需要这么多层? 下图显示了数据在网络传输时如何封装和解封装。 步骤1:当设备A通过HTTP协议通过网络向设备B发送数据时,首先在应用层添加HTTP头。 步骤2:然后将TCP或UDP标头添加…

WIFI7:开启无线通信新纪元

在数字化时代,无线通信是我们生活中不可或缺的一部分。随着Wi-Fi 7的到来,我们迎来了无线连接的全新时代,这一标准的升级彻底颠覆了我们对速度、效率和连接性的期望。WIFI 7(WIFI7)是下一代WIFI7标准,对应的…

51综合程序01-DAC转换输出波形

文章目录 DAC转换输出波形使用DA转换输出正弦波,三角波,锯齿波(1)仿真电路图(2)源代码(3)实验结果 DAC转换输出波形 使用DA转换输出正弦波,三角波,锯齿波 &…

element table滚动到底部加载数据(vue3)

效果图 使用插件el-table-infinite-scroll npm install --save el-table-infinite-scroll局部导入 <template><div class"projectTableClass"><el-table v-el-table-infinite-scroll"load"></el-table></div> </temp…

立刻解决缺少msvcp140_1.dll解决方法,msvcp140_1.dll修复指南

在日常使用电脑的过程中&#xff0c;我们有时会遇到由于某些重要的DLL文件缺失而导致的程序无法正常启动的问题。很多用户可能都经历过由于缺少msvcp140_1.dll导致应用程序无法运行的情况。本文将为你提供解决msvcp140_1.dll缺失问题的详尽方法&#xff0c;附带对每种方法优点和…

(1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)

电子工业出版社 Publishing House Of Electronics Industry 北京BeiJing 版次&#xff1a;2018年10月第1版 印次&#xff1a;2023年2月第22次印刷 定价&#xff1a;68元 声明 作为项目管理协会&#xff08;PMI&#xff09;的标准和指南&#xff0c;本指南是通过相关人员的…

C语言IIR双向滤波

设计一个0.5~1Hz的IIR滤波器&#xff0c;用巴特沃斯或者契比雪夫2&#xff0c;看零极点图是稳定的。 设计如下&#xff1a; function Hd iir_highpass_05_1_buter %IIR_HIGHPASS_05_1_BUTER Returns a discrete-time filter object.% MATLAB Code % Generated by MATLAB(R) …

流畅的Python (节选)

0 前言 节选学习部分有用的内容 Fluent Python 2 序列构成的数组 Python 会忽略代码里 []、{} 和 () 中的换行&#xff0c;因此如果你的代码里有多行的列表、列表推导、生成器表达式、字典这一类的&#xff0c;可以省略不太好看的续行符 \。 元组其实是对数据的记录&#x…

苹果输入法怎么换行?3个换行技巧,速速掌握!

在日常打字的时候&#xff0c;我们经常会遇到需要换行的情况。比如&#xff0c;在聊天、写作、编辑文档等场景下&#xff0c;当一行文字输入完成后&#xff0c;我们通常需要将光标移动到下一行再继续输入文字。那么这时候就需要我们进行换行操作。 然而&#xff0c;很多用户对…

webpack开发环境

文章目录 前言webpack.config.js使用 source mapwebpack.config.jssrc/print.js 选择一个开发工具使用 watch mode(观察模式)package.jsonsrc/print.js使用 webpack-dev-serverwebpack.config.js package.json使用 webpack-dev-middlewareprojectserver.jspackage.jsonpackage.…

LeetCode | 二叉树的最大深度

LeetCode | 二叉树的最大深度 OJ链接 这里需要注意的一点是每次有返回值&#xff0c;需要定义变量来保存上一次的值最后取最高的一方加1 int maxDepth(struct TreeNode* root) {if(root NULL)return NULL;int left maxDepth(root->left);int right maxDepth(root->r…

秒杀业务

1.缓存秒杀商品库存到redis 2.用户访问秒杀商品&#xff0c;进行商品的抢购 3.判断用户是否存在未支付的秒杀订单&#xff0c;如果存在&#xff0c;告知用户&#xff0c;请先支付。&#xff08;幂等&#xff09; 4.判断排队人数是否达到上线。redis ,incrment() 达到上线&am…

【广州华锐视点】3D宪法普法知识宣传展厅——线上法律知识学习新途径

随着科技的不断发展&#xff0c;人们的生活方式也在不断地改变。在这个信息爆炸的时代&#xff0c;传统的普法教育方式已经无法满足人们的需求。为了适应这一变化&#xff0c;越来越多的教育机构开始尝试利用现代科技手段进行普法教育。其中&#xff0c;3D宪法普法知识宣传展厅…

HarmonyOS——UI开展前的阶段总结

当足够的了解了HarmonyOS的相关特性之后&#xff0c;再去介入UI&#xff0c;你会发现无比的轻松&#xff0c;特别当你有着其他的声明式UI开发的经验时&#xff0c;对于HarmonyOS的UI&#xff0c;大致一扫&#xff0c;也就会了。 如何把UI阐述的简单易懂&#xff0c;又能方便大…

【Java】3. 字面量

3.字面量 字面量类型说明程序中的写法整数不带小数的数字666&#xff0c;-88小数带小数的数字13.14&#xff0c;-5.21字符必须使用单引号&#xff0c;有且仅能一个字符‘A’&#xff0c;‘0’&#xff0c; ‘我’字符串必须使用双引号&#xff0c;内容可有可无“HelloWorld”&…