zodern / meteor-up

Production Quality Meteor Deployment to Anywhere
http://meteor-up.com/
MIT License
1.28k stars 279 forks source link

mup deploy for Meteor 2.6 fails: external mongo server replica set hostname not found #1304

Closed kevpfowler closed 2 years ago

kevpfowler commented 2 years ago

This is likely related to #1294, except that was about replica set for local mongo server (in docker container), and this concerns an external mongo server with a replica set. The mongo driver seems to be attempting to connect to the replica set hostnames instead of the IP address in the mup config. Since the hostnames are not resolved within the app server docker container, this fails, so the deploy fails.

Perhaps if there was a way to tell the app server container how to resolve those hostnames?


This has worked correctly up through Meteor 2.5.6. After upgrading to Meteor 2.6 and testing successfully on local system, the mup deploy failed. The server being deployed to uses an external mongo server that is setup as a replica set. We have always provided a MONGO_URL that points to the primary server:

MONGO_URL: 'mongodb://user:password@10.33.2.12/meteor',

The mup deploy fails with three MongoNetworkError exceptions, one for each of the three server hostnames in the replica set. It seems that meteor is obtaining the replica set hostnames from the mongo server, and then trying to connect by resolving that hostname, rather than just using the IP address in the MONGO_URL?

Perhaps this is an issue in the upgraded Meteor mongo package or the updated nodejs mongo it uses?

Mup version: 1.5.7

Mup config

{
  "servers": {
    "one": {
      "host": "subdomain.host.com",
      "username": "ubuntu",
      "opts": {
        "port": 10022
      }
    }
  },
  "proxy": {
    "domains": "subdomain.host.com"
  },
  "app": {
    "name": "super",
    "path": "/home/kfowler/Development/super-client",
    "docker": {
      "image": "zodern/meteor:root",
      "imagePort": 80,
      "bind": "127.0.0.1",
      "prepareBundle": true,
      "stopAppDuringPrepareBundle": false,
      "useBuildKit": true
    },
    "servers": {
      "one": {}
    },
    "buildOptions": {
      "serverOnly": true,
      "debug": true,
      "cleanAfterBuild": true,
      "allowIncompatibleUpdates": true,
      "buildLocation": "/tmp/mup-meteor-7ad408c0-3ebd-46d7-8d5f-d3e42b52481d",
      "cleanBuildLocation": true
    },
    "env": {
      "ROOT_URL": "https://subdomain.host.com/",
      "MONGO_URL": "mongodb://user:password@10.33.2.12/meteor",
      "VIRTUAL_HOST": "subdomain.host.com",
      "HTTPS_METHOD": "noredirect",
      "VIRTUAL_PORT": 80,
      "HTTP_FORWARDED_COUNT": 1
    },
    "log": {
      "driver": "json-file"
    },
    "deployCheckWaitTime": 180,
    "deployCheckPort": 80,
    "enableUploadProgressBar": true,
    "type": "meteor"
  }
}
✓ Config is valid

Output of command

Cleaning Up Previous Builds
Building App Bundle Locally
@angular/compiler and @angular/compiler-cli must be installed for AOT compilation!
AOT compilation disabled!
Ignore this if you are using AngularJS 1.X
[client]: Collecting TypeScript source files: 5.478ms
[client]: TypeScript Files Compilation: 0.018ms
[client]: HTML Files Compilation: 233.101ms
[client]: SCSS Files Compilation: 334.737ms
[client]: Collecting TypeScript source files: 2.873ms
[client]: TypeScript Files Compilation: 0.025ms
[client]: HTML Files Compilation: 101.11ms
[client]: SCSS Files Compilation: 352.04ms
[client]: Collecting TypeScript source files: 2.351ms
[client]: TypeScript Files Compilation: 0.021ms
[client]: HTML Files Compilation: 71.871ms
[client]: SCSS Files Compilation: 532.912ms
[server]: Collecting TypeScript source files: 1.093ms
[server]: TypeScript Files Compilation: 0.013ms
[server]: HTML Files Compilation: 0.029ms
[server]: SCSS Files Compilation: 0.03ms

Started TaskList: Pushing Meteor App
[subdomain.host.com] - Pushing Meteor App Bundle to the Server
[subdomain.host.com] - Pushing Meteor App Bundle to the Server: SUCCESS

Started TaskList: Prepare App Bundle
[subdomain.host.com] - Prepare Bundle
Updating base image
root: Pulling from zodern/meteor
Digest: sha256:bd8726299e544bb00701ade4086d2c93564ee071d0adbf80a1ed0549a082b64a
Status: Image is up to date for zodern/meteor:root
Preparing for docker build
Creating Dockerfile
Finished creating Dockerfile
Building image

<snip>

real    0m36.252s
user    0m0.408s
sys     0m0.160s
Tagged latest
Deleted Images:
deleted: sha256:23c12bdfeca4d3286dc9c9bc877c75dcac7eeaf4679a2e741d75f01f25541bb8

Total reclaimed space: 0B
Deleted build cache objects:
upyz4hwef4wf8pilug7f04lck
p8efufevgdik85hwyohmxowwe

Total reclaimed space: 378MB
[subdomain.host.com] - Prepare Bundle: SUCCESS

Started TaskList: Configuring App
[subdomain.host.com] - Pushing the Startup Script
[subdomain.host.com] - Pushing the Startup Script: SUCCESS
[subdomain.host.com] - Sending Environment Variables
[subdomain.host.com] - Sending Environment Variables: SUCCESS

Started TaskList: Start Meteor
[subdomain.host.com] - Start Meteor
using image
removing last
Image mup-super:latest
Volume
Removing docker containers. Errors about nonexistent endpoints and containers are normal.
super
Error response from daemon: endpoint super not found
Error: No such container: super-frontend
Error response from daemon: endpoint super-frontend not found
Error: No such container: super-nginx-letsencrypt
Error response from daemon: endpoint super-nginx-letsencrypt not found
Error: No such container: super-nginx-proxy
Error response from daemon: endpoint super-nginx-proxy not found
Finished removing docker containers
fa81335c5f010136ae7719c6623df357f0e97cb4fa0676abb903853ae9bd3a33
Ran zodern/meteor:root
[subdomain.host.com] - Start Meteor: SUCCESS
[subdomain.host.com] - Verifying Deployment
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
IP: 172.17.0.4
curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
=> Container status:
restarted: 5 times {"Bridge":"","SandboxID":"f2243c42d3bc3c509906ed5849d0397bbb7d0bfba339e11f4c35709b66ea19e3","HairpinMode":false,"LinkLocalIPv6Address":"","LinkLocalIPv6PrefixLen":0,"Ports":{"3000/tcp":null,"80/tcp":null},"SandboxKey":"/var/run/docker/netns/f2243c42d3bc","SecondaryIPAddresses":null,"SecondaryIPv6Addresses":null,"EndpointID":"4e1a2b0a0a30928a8155ab05880dab47d43d2274abab80021c9ec3e67b6ced88","Gateway":"172.17.0.1","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"IPAddress":"172.17.0.4","IPPrefixLen":16,"IPv6Gateway":"","MacAddress":"02:42:ac:11:00:04","Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"51d3cc13c3d7f79d18cd441ff601358aa22c97937bd1ffc4b5a0771a9e9f6792","EndpointID":"4e1a2b0a0a30928a8155ab05880dab47d43d2274abab80021c9ec3e67b6ced88","Gateway":"172.17.0.1","IPAddress":"172.17.0.4","IPPrefixLen":16,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":"02:42:ac:11:00:04","DriverOpts":null}}} {"Status":"running","Running":true,"Paused":false,"Restarting":false,"OOMKilled":false,"Dead":false,"Pid":14613,"ExitCode":0,"Error":"","StartedAt":"2022-02-24T17:41:11.084873343Z","FinishedAt":"2022-02-24T17:41:10.472942893Z"}
=> Logs:
    type: 'ReplicaSetNoPrimary',
    servers: Map(3) {
      'testbed-db:27017' => ServerDescription {
        _hostAddress: HostAddress { isIPv6: false, host: 'testbed-db', port: 27017 },
        address: 'testbed-db:27017',
        type: 'Unknown',
        hosts: [],
        passives: [],
        arbiters: [],
        tags: {},
        minWireVersion: 0,
        maxWireVersion: 0,
        roundTripTime: -1,
        lastUpdateTime: 62477390915,
        lastWriteDate: 0,
        error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db
            at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
            at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
            at Object.onceWrapper (events.js:520:26)
            at Socket.emit (events.js:400:28)
            at emitErrorNT (internal/streams/destroy.js:106:8)
            at emitErrorCloseNT (internal/streams/destroy.js:74:3)
            at processTicksAndRejections (internal/process/task_queues.js:82:21)
      },
      'testbed-db-s2:27017' => ServerDescription {
        _hostAddress: HostAddress {
          isIPv6: false,
          host: 'testbed-db-s2',
          port: 27017
        },
        address: 'testbed-db-s2:27017',
        type: 'Unknown',
        hosts: [],
        passives: [],
        arbiters: [],
        tags: {},
        minWireVersion: 0,
        maxWireVersion: 0,
        roundTripTime: -1,
        lastUpdateTime: 62477390916,
        lastWriteDate: 0,
        error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db-s2
            at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
            at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
            at Object.onceWrapper (events.js:520:26)
            at Socket.emit (events.js:400:28)
            at emitErrorNT (internal/streams/destroy.js:106:8)
            at emitErrorCloseNT (internal/streams/destroy.js:74:3)
            at processTicksAndRejections (internal/process/task_queues.js:82:21)
      },
      'testbed-db-s1:27017' => ServerDescription {
        _hostAddress: HostAddress {
          isIPv6: false,
          host: 'testbed-db-s1',
          port: 27017
        },
        address: 'testbed-db-s1:27017',
        type: 'Unknown',
        hosts: [],
        passives: [],
        arbiters: [],
        tags: {},
        minWireVersion: 0,
        maxWireVersion: 0,
        roundTripTime: -1,
        lastUpdateTime: 62477390940,
        lastWriteDate: 0,
        error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db-s1
            at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
            at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
            at Object.onceWrapper (events.js:520:26)
            at Socket.emit (events.js:400:28)
            at emitErrorNT (internal/streams/destroy.js:106:8)
            at emitErrorCloseNT (internal/streams/destroy.js:74:3)
            at processTicksAndRejections (internal/process/task_queues.js:82:21)
      }
    },
    stale: false,
    compatible: true,
    heartbeatFrequencyMS: 10000,
    localThresholdMS: 15,
    setName: 'replica-set-0',
    maxSetVersion: 69102,
    maxElectionId: ObjectId {
      [Symbol(id)]: Buffer(12) [Uint8Array] [
        127, 255, 255, 255, 0,
          0,   0,   0,   0, 0,
          0,  27
      ]
    },
    commonWireVersion: 7,
    logicalSessionTimeoutMinutes: undefined
  }
}
=> Setting node version
NODE_VERSION=14.18.3
v14.18.3 is already installed.
Now using node v14.18.3 (npm v6.14.15)
default -> 14.18.3 (-> v14.18.3 *)
=> Starting meteor app on port 80

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

=> Redeploying previous version of the app

[subdomain.host.com] x Verifying Deployment: FAILED

              ------------------------------------STDERR------------------------------------
              t 80: Connection refused
        curl: (7) Failed to connect to 172.17.0.4 port 80: Connection refused
        => Logs:
            type: 'ReplicaSetNoPrimary',
            servers: Map(3) {
              'testbed-db:27017' => ServerDescription {
                _hostAddress: HostAddress { isIPv6: false, host: 'testbed-db', port: 27017 },
                address: 'testbed-db:27017',
                type: 'Unknown',
                hosts: [],
                passives: [],
                arbiters: [],
                tags: {},
                minWireVersion: 0,
                maxWireVersion: 0,
                roundTripTime: -1,
                lastUpdateTime: 62477390915,
                lastWriteDate: 0,
                error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db
                    at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
                    at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
                    at Object.onceWrapper (events.js:520:26)
                    at Socket.emit (events.js:400:28)
                    at emitErrorNT (internal/streams/destroy.js:106:8)
                    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
                    at processTicksAndRejections (internal/process/task_queues.js:82:21)
              },
              'testbed-db-s2:27017' => ServerDescription {
                _hostAddress: HostAddress {
                  isIPv6: false,
                  host: 'testbed-db-s2',
                  port: 27017
                },
                address: 'testbed-db-s2:27017',
                type: 'Unknown',
                hosts: [],
                passives: [],
                arbiters: [],
                tags: {},
                minWireVersion: 0,
                maxWireVersion: 0,
                roundTripTime: -1,
                lastUpdateTime: 62477390916,
                lastWriteDate: 0,
                error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db-s2
                    at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
                    at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
                    at Object.onceWrapper (events.js:520:26)
                    at Socket.emit (events.js:400:28)
                    at emitErrorNT (internal/streams/destroy.js:106:8)
                    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
                    at processTicksAndRejections (internal/process/task_queues.js:82:21)
              },
              'testbed-db-s1:27017' => ServerDescription {
                _hostAddress: HostAddress {
                  isIPv6: false,
                  host: 'testbed-db-s1',
                  port: 27017
                },
                address: 'testbed-db-s1:27017',
                type: 'Unknown',
                hosts: [],
                passives: [],
                arbiters: [],
                tags: {},
                minWireVersion: 0,
                maxWireVersion: 0,
                roundTripTime: -1,
                lastUpdateTime: 62477390940,
                lastWriteDate: 0,
                error: MongoNetworkError: getaddrinfo ENOTFOUND testbed-db-s1
                    at connectionFailureError (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:381:20)
                    at Socket.<anonymous> (/built_app/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/lib/cmap/connect.js:301:22)
                    at Object.onceWrapper (events.js:520:26)
                    at Socket.emit (events.js:400:28)
                    at emitErrorNT (internal/streams/destroy.js:106:8)
                    at emitErrorCloseNT (internal/streams/destroy.js:74:3)
                    at processTicksAndRejections (internal/process/task_queues.js:82:21)
              }
            },
            stale: false,
            compatible: true,
            heartbeatFrequencyMS: 10000,
            localThresholdMS: 15,
            setName: 'replica-set-0',
            maxSetVersion: 69102,
            maxElectionId: ObjectId {
              [Symbol(id)]: Buffer(12) [Uint8Array] [
                127, 255, 255, 255, 0,
                  0,   0,   0,   0, 0,
                  0,  27
              ]
            },
            commonWireVersion: 7,
            logicalSessionTimeoutMinutes: undefined
          }
        }
        => Setting node version
        NODE_VERSION=14.18.3
        v14.18.3 is already installed.
        Now using node v14.18.3 (npm v6.14.15)
        default -> 14.18.3 (-> v14.18.3 *)
        => Starting meteor app on port 80

        => Redeploying previous version of the app

              ------------------------------------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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        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
        IP: 172.17.0.4
        IP: 172.17.0.4
        IP: 172.17.0.4
        => Container status:
        restarted: 5 times {"Bridge":"","SandboxID":"f2243c42d3bc3c509906ed5849d0397bbb7d0bfba339e11f4c35709b66ea19e3","HairpinMode":false,"LinkLocalIPv6Address":"","LinkLocalIPv6PrefixLen":0,"Ports":{"3000/tcp":null,"80/tcp":null},"SandboxKey":"/var/run/docker/netns/f2243c42d3bc","SecondaryIPAddresses":null,"SecondaryIPv6Addresses":null,"EndpointID":"4e1a2b0a0a30928a8155ab05880dab47d43d2274abab80021c9ec3e67b6ced88","Gateway":"172.17.0.1","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"IPAddress":"172.17.0.4","IPPrefixLen":16,"IPv6Gateway":"","MacAddress":"02:42:ac:11:00:04","Networks":{"bridge":{"IPAMConfig":null,"Links":null,"Aliases":null,"NetworkID":"51d3cc13c3d7f79d18cd441ff601358aa22c97937bd1ffc4b5a0771a9e9f6792","EndpointID":"4e1a2b0a0a30928a8155ab05880dab47d43d2274abab80021c9ec3e67b6ced88","Gateway":"172.17.0.1","IPAddress":"172.17.0.4","IPPrefixLen":16,"IPv6Gateway":"","GlobalIPv6Address":"","GlobalIPv6PrefixLen":0,"MacAddress":"02:42:ac:11:00:04","DriverOpts":null}}} {"Status":"running","Running":true,"Paused":false,"Restarting":false,"OOMKilled":false,"Dead":false,"Pid":14613,"ExitCode":0,"Error":"","StartedAt":"2022-02-24T17:41:11.084873343Z","FinishedAt":"2022-02-24T17:41:10.472942893Z"}

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

              ------------------------------------------------------------------------------
zodern commented 2 years ago

You can use docker's --add-host option. For example, in your mup config you can add

module.exports = {
  app: {
    docker: {
       args: ['--add-host="host-name:ip-address"', '--add-host="host-2:1.1.1.1"']
     }
  }
}
kevpfowler commented 2 years ago

Ah - thank you, adding that fixed the problem and it deploys successfully now! Thank you for the speedy response.