2016-08-20 71 views
0

我正在AWS EC2实例上托管Meteor应用程序。我成功设法使用Meteor-up部署我的应用两次(mup deploy命令)。Meteor-up:部署不会更新AWS EC2上的应用程序

但一些修改后,mup deploy还是回到一个完全正常的消息(见下文),但什么都不做,应用程序不会被更新。之后我尝试重新启动实例(并清理自己的缓存),但我仍然收到旧版本。

Building App Bundle Locally 

Started TaskList: Pushing Meteor 
[XX.XX.XX.X] - Pushing Meteor App Bundle to The Server 
[XX.XX.XX.X] - Pushing Meteor App Bundle to The Server: SUCCESS 
[XX.XX.XX.X] - Pushing the Startup Script 
[XX.XX.XX.X] - Pushing the Startup Script: SUCCESS 

我可以使用ssh连接到应用程序,但我不知道接下来要做什么。我最近转向了Meteor 1.4.1(来自Meteor 1.4.0),但我认为这不是相关的。

可能有人请帮我调查这个问题/提供一些可能的解决方案?

编辑:这里是来自docker info命令日志。我有两个容器运行,但部署似乎并没有增加这个数字,我也不熟悉Docker。

Containers: 2 
Running: 2 
Paused: 0 
Stopped: 0 
Images: 4 
Server Version: 1.12.0 
Storage Driver: aufs 
Root Dir: /var/lib/docker/aufs 
Backing Filesystem: extfs 
Dirs: 20 
Dirperm1 Supported: false 
Logging Driver: json-file 
Cgroup Driver: cgroupfs 
Plugins: 
Volume: local 
Network: bridge null host overlay 
Swarm: inactive 
Runtimes: runc 
Default Runtime: runc 
Security Options: apparmor 
Kernel Version: 3.13.0-93-generic 
Operating System: Ubuntu 14.04.4 LTS 
OSType: linux 
Architecture: x86_64 
CPUs: 1 
Total Memory: 992.5 MiB 
Name: ip-XXX-XX-XX-XX 
ID: XXXXXXXXXXXXXXXXXXXXXXXXXXXXX 
Docker Root Dir: /var/lib/docker 
Debug Mode (client): false 
Debug Mode (server): false 
Registry: https://index.docker.io/v1/ 
WARNING: No swap limit support 
Insecure Registries: 
127.0.0.0/8 

编辑2:这个问题似乎与某种假阳性。根据docker日志,部署是可以的,但应用程序实际上在启动时崩溃并因此回滚到最新版本。

+0

你能告诉我们你在你的mup配置中改变了什么吗? – gkrizek

+0

嗨,我没有改变两个更新之间的配置文件。 由于mup和Meteor 1.4使用的默认码头图像的问题,我使用'dockerImage:'abernix/meteord:base'',是否会导致此问题? –

+0

明白了。我并不是很熟悉在Docker容器中运行Meteor,但如果这是你改变的唯一的东西,我相信这是一个开始寻找的好地方。 – gkrizek

回答

0

好吧,我找到了问题。我的settings.json文件有语法错误(尾随逗号),所以应用程序实际上在启动时崩溃。

为了得到这个信息,我使用ssh连接到我的EC2实例。然后我找到了使用docker ps的容器ID,并使用docker logs MyContainerId命令获取应用程序日志。 mup logs实际上应该给出相同的信息,而不需要ssh连接到实例,但是存在一个公开的问题,它不起作用。

日志告诉我,Meteor.settings是不确定的,我只是固定它。 我在这里在Github上打开了一个问题https://github.com/kadirahq/meteor-up/issues/242,因为我认为mup deploy应该从一开始就告知我这个崩溃。

0

请检查配置文件中的应用程序路径。路径可能与配置文件中的路径不同。

+0

你在说'mup.js'?我将'meteor.path'设置为'../',因为'mup.js'位于'myapp/.deploy /'文件夹中。当我运行'mup deploy'时,我在'.deploy'文件夹中,所以路径声音如此好:/无论如何,错误的路径会给出错误消息,不是吗? –

相关问题