前情摘要:虽然群晖有web station 作为开发简单网页的服务器首选,但是web station 里面最好用的技术栈还是基于LNMP或者LAMP的php开发环境。对于学习nodejs的同学可能丈二和尚,摸不着头脑,到底如何在web station上运行nodejs?可能并不能快速找到相关文档以供解决问题。

而群晖的docker套件正如改革春风,它是各种应用甚至系统的容器,生产力强大,能够安装各种软件和环境,并且可视化界面让我们无需懂得多少代码就能快速构建开发和运行所需环境,本文介绍一种简单的nodejs 运行方法和用docker构建简单的web服务器。

php 的后端大概可以有 LNMP或者LAMP,实际上包括系统linux,Nginx或Apache,数据库mysql或者mariaDB,和PHP开发语言。

而本次采用技术栈为前端容易理解的基于JavaScript的Nodejs (which 替代了PHP),使用json格式的mongoDB which 替代mysql,简单网页暂不需要Nginx和Apache,开发系统选用centos 开发版。

运行容器添加独立的mongoDB和centos.

mongoDB开放映射端口,比如默认27017;centos 映射内部端口80(或者其他)为32770(或其他);

这样就可以通过ip地址:端口的方式访问mongoDB 和 centos的web服务器了。

centos容器详情:

包括

  1. 映射端口和装载路径文件夹到群晖,
  2. 安装部署nodejs
  3. 拷贝代码并最后node app 运行相关代码。

第一步:

映射端口
设置服务器存放文件夹

第二步centos下终端安装部署nodejs

nodejs的直接部署(终端命令)

首先安装 wget:

yum install -y wget

下载 nodejs 最新的 bin 包:

wget https://nodejs.org/dist/v9.3.0/node-v9.3.0-linux-x64.tar.xz

解压包

xz -d node-v9.3.0-linux-x64.tar.xz
tar -xf node-v9.3.0-linux-x64.tar

部署 bin 文件(让node 全局可用)

因为在根目录安装,路径为~/node-v9.3.0-linux-x64/bin。

ln -s ~/node-v9.3.0-linux-x64/bin/node /usr/bin/node
ln -s ~/node-v9.3.0-linux-x64/bin/npm /usr/bin/npm

测试

node -v
npm

输出版本号,则部署 OK:

在www中npm安装所需模块:

包括

npm init安装dependencies或者手动安装四个包

art-template作为页面分离和拼接字符串等的模板引擎,

mongoose 连接mongoDB数据库

router作为路由

serve-static访问照片、css等静态资源。

文件列表(简单模式)

model 设置数据库连接

public 存放静态资源

route设置路由

views存放art文件,即页面模块

app.js 引入模块和启动服务器。

编写好路由后,cd 到 www文件夹,node app 启动即可运行编写好的网页了。


PS:mongoDB可视化软件:compass

编辑器:vs code

linux启动php服务_群晖docker 实现nodejs为后端的简单web服务器 并连接数据库相关推荐

  1. linux启动lighttpd服务,如何使用Yum在CentOS和RHEL上安装Lighttpd Web服务器

    Lighttpd是一种适合在生产环境中运行的高性能Web服务器.它是高度优化,安全且非常灵活的Web服务器:与其他Web服务器相比,LightTPD使用的内存和CPU非常低.其事件驱动架构针对大量并行 ...

  2. javaweb 图书管理系统完整代码_群晖 + Docker + Calibre-Web 搭建电子书管理系统

    自从有了群晖生活方便了很多,想看的书也越来越多, 给管理带来了挑战,想着有没有什么高大上一点的系统能帮我管理这些电子书籍,就像Ds Video一样,界面养眼的同时还能激发我看书的欲望. 我在百度用各种 ...

  3. linux 启动rsyslog服务_我的服务器怎么老这么慢,难道说是被挖矿了?linux开机启动项自查...

    黑客技术点击右侧关注,了解黑客的世界! Java开发进阶点击右侧关注,掌握进阶之路! Python开发点击右侧关注,探讨技术话题! 作者丨小熊爱编程 来源丨编程三分钟(coding3min) &quo ...

  4. 群辉docker安装树莓派镜像_群晖 Docker 安装 AriaNg+File Browser

    说明: AriaNg 是一个让 aria2 更容易使用的现代 Web 前端,使用响应式布局,支持各种计算机或移动设备.本次所使用的镜像包含 Aria2.AriaNg 和 File Manager 同时 ...

  5. 群晖docker搭建印象笔记_群晖docker安装蚂蚁笔记安装教程

    背景 偶然看见其他网友群晖搭建了蚂蚁笔记,自己也想装一个,但是在其他教程都碰见了一些坑,写个教程防止大家绕路. 用途 传说中蚂蚁笔记有桌面端.手机端.微信端的私有云笔记 安装教程 当然是安装镜像了,需 ...

  6. 群晖黑科技docker套件_群晖Docker套件下搭建运行MSSQL方法

    前言 微软已经不再是以前的那个微软了,如果微软SQL Server早开源几年,估计现在数据库方面就没有Oracle什么事情了. Canonical 技术主管 Dustin Kirkland 表示:微软 ...

  7. 群晖docker火狐_群晖 Docker百度云下载文件方法2019

    1.安装注意事项: (1)设置注意事项 image (2)打开步骤 image 网页输入:NAS的IP地址:本地端口号, 比如 192....:123456 就打开了baidupcs-web的界面,输 ...

  8. 群晖docker实现阿里云动态公网域名解析ddns服务

    日常生活中,一般家庭用户宽带使用的都是内网ip,如果需要在外网就是远程使用,需要将家庭ip向电信部门申请变更为公网ip,通常情况下,我们获得的都是动态公网ip,这种ip每隔一段时间都会自动变化,这样如 ...

  9. 群晖python套件包_利用群晖Docker安装ubuntu16.04搭建python网站服务器(部署篇)

    在帖子<利用群晖Docker安装ubuntu16.04搭建python网站服务器(安装篇)(地址:http://www.cirdown.com:81/thread-185-1-1.html)&g ...

最新文章

  1. 【linux】Valgrind工具集详解(十五):Callgrind(性能分析图)
  2. 问题二:相关性怎么引入?
  3. iOS中引用计数内存管理机制分析
  4. 测试几款STC下载电路
  5. 关于多人操作数据的处理策略
  6. 记一次iis+aspx环境下利用http参数污染绕过waf
  7. 远程包含shell时,上传shell时所遇到一句话木马不能上传问题解决的办法(这里为单引号与双引号问题)
  8. java 工厂模式的写法_设计模式-工厂模式
  9. 【转】使用EBNF相对于BNF表示的优越性
  10. iOS __strong __weak @Strongify @Weakify
  11. contenteditable获得焦点后的边框设置
  12. em算法 实例 正态分布_人人都能看懂的EM算法推导
  13. mrc20温控f1什么意思_精确率、召回率、F1 值、ROC、AUC 各自的优缺点是什么?
  14. 表格送货单自动编号vba_制作仓库入库单,自动登记商品数据,这段代码只需三步搞定...
  15. Spring Boot各种日志记录方式详解
  16. 在巨人的肩上:开源GIS工程大全索引
  17. 计算机重启报错69,[转载]速达3000 常见问题一(下)
  18. 精益思想如何加速企业的全局价值流动?
  19. 中国石油大学《马克思主义基本原理》第三阶段在线作业
  20. 基于android的校园社区平台

热门文章

  1. python中的类属性和实例属性
  2. java todo error_java.sql.SQLException: sql injection violation, syntax error: TODO UNIQUE unique
  3. mysql错误日志为aborting_MySQL 错误日志(Error Log)
  4. 领域应用 | 为电商而生的知识图谱,如何感应用户需求?
  5. Linux下的Tomcat服务器修改server.xml中的8080端口号后出现不能访问首页
  6. Fast R-CNN(理解)
  7. Windows下MYSQL的安装与配置
  8. nodejs+kafka+storm+hbase 开发
  9. JQUERY AJAX无刷新异步上传文件
  10. android如何与服务器交互?