meteor-up icon indicating copy to clipboard operation
meteor-up copied to clipboard

Mup fails on any error during server startup, even when try/catch

Open satyavh opened this issue 4 years ago • 6 comments

Mup version (mup --version): 1.5.1

Mup config

{
  "servers": {
    "one": {
      "host": "1.2.3.4",
      "username": "root"
    }
  },
  "app": {
    "name": "my-app",
    "path": "../",
    "servers": {
      "one": {}
    },
    "buildOptions": {
      "serverOnly": true
    },
    "env": {
      "NODE_ENV": "staging",
      "ROOT_URL": "https://subdomain.subdomain.host.com",
      "MONGO_URL": "...",
      "MONGO_OPLOG_URL": "...",
      "VIRTUAL_HOST": "correct url",
      "HTTPS_METHOD": "redirect",
      "LETSENCRYPT_HOST": "correct url",
      "LETSENCRYPT_EMAIL": "...",
      "VIRTUAL_PORT": 3000,
      "HTTP_FORWARDED_COUNT": 1
    },
    "docker": {
      "image": "abernix/meteord:node-12-base",
      "stopAppDuringPrepareBundle": true,
      "imagePort": 3000
    },
    "enableUploadProgressBar": true,
    "type": "meteor"
  },
  "proxy": {
    "domains": "...",
    "ssl": {
      "letsEncryptEmail": "...",
      "forceSSL": true
    }
  }
}

Output of command

[167.71.7.108] x Verifying Deployment: FAILED

	      ------------------------------------STDERR------------------------------------

	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
	                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 172.17.0.4 port 3000: Connection refused
	Container spent too much time restarting.
	=> Logs:
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.
	=> Starting meteor app on port:3000
	(node:1) DeprecationWarning: current Server Discovery and Monitoring engine is deprecated, and will be removed in a future version. To use the new Server Discover and Monitoring engine, pass option { useUnifiedTopology: true } to the MongoClient constructor.

	      ------------------------------------STDOUT------------------------------------
	      IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	IP: 172.17.0.4
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	CONTAINER IP EMPTRY
	IP:
	Container has no IP Address, likely from the app crashing.
	=> Container status:
	restarted: 7 times {"Bridge":"","SandboxID":"3ca7c3af23649b1b3ae56fd2ee4c5b78f1b63d2059e221f7aa1f4a5690965882","HairpinMode":false,"LinkLocalIPv6Address":"","LinkLocalIPv6PrefixLen":0,"Ports":{},"SandboxKey":"/var/run/docker/netns/3ca7c3af2364","SecondaryIPAddresses":null,"SecondaryIPv6Addresses":null,"EndpointID":"","Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","MacAddress":"","Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"c8137b5eead86dd520fa75ce4b22f70002ccff21f189935cd111daf5dc42cc5e","EndpointID":"","Gateway":"","IPAddress":"","IPPrefixLen":0,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":"","DriverOpts":null}}} {"Status":"restarting","Running":true,"Paused":false,"Restarting":true,"OOMKilled":false,"Dead":false,"Pid":0,"ExitCode":1,"Error":"","StartedAt":"2020-06-03T18:11:45.266836504Z","FinishedAt":"2020-06-03T18:11:52.145840745Z"}

	To see more logs type 'mup logs --tail=200'


	      ------------------------------------------------------------------------------

Just keeps failing to start Meteor for some reason. Any ideas?

satyavh avatar Jun 03 '20 18:06 satyavh

The app's logs are not showing the reason. Have you successfully deployed the app in the past?

zodern avatar Jun 03 '20 19:06 zodern

This is all the reason I get. No it's a new app. And it's the first time deploying with Mup 1.5. Started on a fresh DO VPS...

satyavh avatar Jun 03 '20 19:06 satyavh

mup status
=> Servers
  - 167.71.7.108: Ubuntu 18.04

=> Docker Status
 - 167.71.7.108: 19.03.11 Running

=> Meteor Status - scanapp
  - 167.71.7.108: restarting
    Created at 2020-06-03T19:16:54.411003605Z
    Restarted 12 times
    ENV:
      - ROOT_URL=correct
      - NODE_ENV=staging
      - MONGO_URL=correct
      - MONGO_OPLOG_URL=correct
      - VIRTUAL_HOST=correct      
      - HTTPS_METHOD=redirect
      - LETSENCRYPT_HOST=correct
      - LETSENCRYPT_EMAIL=correct
      - VIRTUAL_PORT=3000
      - HTTP_FORWARDED_COUNT=1
      - METEOR_SETTINGS={"public":{}}
      - PORT=3000
      - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
      - METEORD_DIR=/opt/meteord
      - NODE_VERSION=12.16.1
    App available through reverse proxy
      - Available in app's docker container: false

=> Reverse Proxy Status
 - 167.71.7.108:
   - NGINX:
     - Status: running
     - Ports:
       - HTTPS: 443
       - HTTP: 80
   - Let's Encrypt
     - Status: running

I wonder where that IP 172.17.0.4from the error logs is coming from...

satyavh avatar Jun 03 '20 19:06 satyavh

Btw, I'm running Meteor 1.10.2

satyavh avatar Jun 03 '20 19:06 satyavh

I figured it out.

If there's a single error thrown somewhere in the code during server startup, Mup will abort - even when that error is within try/catch. That's quite severe abortion! Locally meteor runs just fine with the --production flag, but simply Mup fails on any error during server startup.

satyavh avatar Jun 04 '20 07:06 satyavh

172.17.0.4 is

mup status
=> Servers
  - 167.71.7.108: Ubuntu 18.04

=> Docker Status
 - 167.71.7.108: 19.03.11 Running

=> Meteor Status - scanapp
  - 167.71.7.108: restarting
    Created at 2020-06-03T19:16:54.411003605Z
    Restarted 12 times
    ENV:
      - ROOT_URL=correct
      - NODE_ENV=staging
      - MONGO_URL=correct
      - MONGO_OPLOG_URL=correct
      - VIRTUAL_HOST=correct      
      - HTTPS_METHOD=redirect
      - LETSENCRYPT_HOST=correct
      - LETSENCRYPT_EMAIL=correct
      - VIRTUAL_PORT=3000
      - HTTP_FORWARDED_COUNT=1
      - METEOR_SETTINGS={"public":{}}
      - PORT=3000
      - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
      - METEORD_DIR=/opt/meteord
      - NODE_VERSION=12.16.1
    App available through reverse proxy
      - Available in app's docker container: false

=> Reverse Proxy Status
 - 167.71.7.108:
   - NGINX:
     - Status: running
     - Ports:
       - HTTPS: 443
       - HTTP: 80
   - Let's Encrypt
     - Status: running

I wonder where that IP 172.17.0.4from the error logs is coming from...

172.17.0.4 is docker internal IP Address.

I faced this error too. I suspected not enough resources (same with you I was on $5 DO droplet too), so I upgraded to $10 and it went fine.

anantonton avatar Jul 16 '20 06:07 anantonton