想搭个网站,初步打算nodejs+express+mongodb/mysql
目前VPS在美帝,系统ubuntu14.04,ssh过去延迟基本不能忍受,所以想先在本机(OSX10.10)搭好环境写好代码然后部署到VPS上,这个可以实现吗
1
Twinkle 2015-04-02 10:14:45 +08:00
当然可以...
|
4
John2EX OP @582033 我知道,就是没google到,所以才来这里想找点提示,也不是说具体怎么做吧,就是可能用哪些工具之类的,一个大致的方向而已
|
5
582033 2015-04-02 10:37:46 +08:00
mac上有brew ubuntu下有aptitude/apt-get;
如要要编译也可以,基本没什么区别,都是unix like. |
6
Pastsong 2015-04-02 10:43:03 +08:00
其实你可以试下docker
|
7
iloveayu 2015-04-02 10:50:48 +08:00
只需在Linux下安装nodejs和mongodb/mysql就可以了啊,这些项目的官网不会只提供OS X下的引导的。。。
|
8
padthai 2015-04-02 10:52:59 +08:00
vagrantosx上模拟ubuntu环境
https://www.vagrantup.com/downloads.html |
9
iwege 2015-04-02 10:54:39 +08:00
nodejs 的安装可能相对麻烦一点,官方的那个比较老的。
然后node_module 建议在ubuntu那边npm install , 因为如果用到native module的话是需要在ubuntu这边编译一下才行,不能直接从mac os x 拷贝。 其他的就是两边code sync(一般用git 但是不同步node_modules) ,操作上没有区别。mac 上面怎么做ubuntu就怎么做好了。 另外还有两点注意: 1. mac上一般是不区分大小写的,但是linux一般是区分的。所以这一块需要自己测试。 2. 如果用了shell的一些命令,这个部分需要在linux上测试一下,基本上是通用的,但是不排除兼容性问题。 |
10
John2EX OP @Pastsong 大概看了下Docker的概念,应该是可以把整个开发环境扔一个容器里,不用在不同的机器分别配置各种环境了,要的就是这个。。
|
12
Agromania 2015-04-02 11:31:57 +08:00
刚上手的话建议先用Vagrant,之后再慢慢研究Docker
|
13
jarlyyn 2015-04-02 11:33:49 +08:00
不能直接部署。
很多模块会通过node-gyp根据系统环境编译。 另外docker不能直接在mac下使用,需要配合虚拟机跑linux。 如果想要直接部署到服务器环境上。推荐换linux开发测试。至少要用虚拟机。 |
15
Pastsong 2015-04-02 11:38:15 +08:00
@jarlyyn mac 有 boot2docker 啊, 虽然是用 virtualbox 实现的, 但是开发环境可以不用太在乎性能
|
16
janxin 2015-04-02 11:39:41 +08:00
只是代码的话,nodejs这部分无所谓吧,不过前提是还得装nodejs跟数据库
|
19
qxzw 2015-04-02 11:49:02 +08:00
vagrant+virtualbox
|
20
padthai 2015-04-02 11:54:30 +08:00
200买个树莓做开发环境也是个方案
这个可以团队协作 |
22
jarlyyn 2015-04-02 11:59:20 +08:00
另外,
我自己有macosX,虽然不用。 我自己本机是linux环境。 我有若干个nodejs项目。 我有若干台服务器,包括 debian 6,7,centos 5,6,7 我正在弄自己公司的docker环境。 我的建议是使用虚拟机/真机系统,装docker,然后部署到vps上。 信不信我随你了。 |
23
jarlyyn 2015-04-02 12:03:05 +08:00
瞎说什么nodejs和环境没关系……
如果是php倒才可能是真没问题,虽然我也踩过坑。 nodejs在npm装是会牵涉到make的好不。 先不论在各个环境下库的表现是否一致。 生产环境必然是部署和测试环境一致的软件版本,而非最新的吧。 至少升级库的版本后的话会需要跑一遍单元测试吧? |
24
learnshare 2015-04-02 12:08:20 +08:00
都是跨平台的运行环境,放到 Windows 上跑都行。
怎么做?看官方文档。 |
25
John2EX OP |
26
zonyitoo 2015-04-02 13:40:44 +08:00
`nodejs+express+mongodb/mysql` 这几个都是跨平台的,我看不出这有什么是Google不到的,应该不会有问题。
|
27
7anshuai 2015-04-02 14:20:45 +08:00
@John2EX 如果是新手,为了搭一个Node.js的网站,而去研究Docker和Vagrant。
这样舍本逐末真的好吗? |
28
LeoQ 2015-04-02 14:32:49 +08:00
虚拟机就不错吧, virtualBox什么的
|
29
Viztor 2015-04-02 14:37:29 +08:00
vagrant
|
30
Ghoul2005 2015-04-02 17:20:22 +08:00
人家就是想部署个代码而已,楼上一堆人搞这么复杂干甚,直接scp或rsync就可以了,速度慢不是问题。
|
31
thinker3 2015-04-02 20:37:24 +08:00
@Ghoul2005 我就用rsync, 写了一个一行的push.sh
|
32
blue7wings 2015-04-03 09:17:38 +08:00
同强烈推荐vagrant...根本不用担心平台的问题....
|
33
John2EX OP vagrant确实是个很好的方案,谢谢大家!
|