Unable to deploy website with firebase cli - firebase

firebase.json:
{
"hosting": {
     "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ],
    "headers": [ {
      "source" : "**/*.#(otf|woff|woff2|eot)",
      "headers" : [ {
        "key" : "Access-Control-Allow-Origin",
        "value" : "*"
    } ]
    }, {
      "source" : "**/*.#(css|js|png)",
      "headers" : [ {
      "key" : "Cache-Control",
      "value" : "max-age=14400"
      } ]
    } ]
 }
}
I am unable to deploy static website in Firebase hosting with firebase deploy command. Error I am getting is:
Error: There was an error loading firebase.json:
Unexpected token ' ' at 3:1
     "rewrites": [
^
What exactly is the error?

I tried removing all the whitespaces, tabs & then tried firebase deploy, this time it was successfully deployed.
Still don't know what caused this error. Anyways, thanks SO community.

Related

Firebase Dynamiclink RootURL to index.html

I have a subdomain for example XYZ.com I want XYZ.com to redirect to XYZ.com/index.html
I want XYZ.com/(anystring) to be a dynamicLink.
My firebase.json
{
"hosting": {
  "public": "public",
  "ignore": [
    "firebase.json",
    "**/.*",
    "**/node_modules/**"
  ],
"appAssocition" : "AUTO",
"rewrites":[
{
"source":"/**",
"dynamicLinks": true
}
]
}
}
Short dynamiclink works but the long dynamic link : XYZ.com/?link=abc redirects to index.html for some reasons. What am I doing wrong?

Webpack SASS to CSS with same folder structure

I'm reaching you because I don't understand how to configure webpack to build same style folder structure with css file in.
Here is my base structure in source folder :
src
|-images
| |--lorem-picsum.png
|-pages
| |--about.html
| |--home.html
|-styles
| |-pages
| | |--home.scss
| | |--home.scss
| |--main.scss
What I want is simply a compiling from scss to css file. Moreover, I want to keep the same folder/file structure as in my source folder. Like this :
src
|-images
| |--lorem-picsum.png
|-pages
| |--about.html
| |--home.html
|-styles
| |-pages
| | |--home.css
| | |--home.css
| |--main.css
So, I'm using MiniCssExtractPlugin, css-loader and sass-loader.
Like this : (webpack.config.js)
const HtmlWebpackPlugin = require('html-webpack-plugin');
const path = require('path');
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
// List of the pages
const pages = ["about", "home"];
module.exports = {
mode: 'development',
entry: path.resolve(__dirname, './src/entry.js'),
output: {
path: path.resolve(__dirname, './dist'),
filename: 'main.js',
},
module: {
rules: [
{
test: /\.html$/i,
loader: 'html-loader',
options: {
minimize: false,
}
},
{
test: /\.(png|svg|jpg|jpeg|gif)$/i,
type: 'asset/resource',
generator: {
filename: 'images/[name][ext]'
}
},
{
test: /\.(s(a|c)ss)$/,
use: [MiniCssExtractPlugin.loader,'css-loader', 'sass-loader']
}
],
},
plugins: [].concat(
pages.map((page) =>
new HtmlWebpackPlugin({
template: path.resolve(__dirname, `./src/pages/${page}.html`),
filename: path.resolve(__dirname, `./dist/pages/${page}.html`),
chunks: [page],
})
),
new MiniCssExtractPlugin(),
),
};
But when I build the project, I just get a scss file with barely nothing in it :
dist
|-images
| |--lorem-picsum.png
|-pages
| |--about.html
| |--home.html
|--b88d04fba731603756b1.scss
|--main.js
(b88d04fba731603756b1.scss)
// extracted by mini-css-extract-plugin
export {};
If you see where I'm going wrong, I'd love to hear from you.
Thank you in advance for your help

.Net 5.0 ILogger method IsEnabled how is setting determined in "Logger" configuration?

Environment:
Windows 10
Microsoft Visual Studio Community 2019
Version 16.11.9
VisualStudio.16.Release/16.11.9+32106.194
Target framework is .NET 5.0
Trying to understand / learn Logging configuration features.
Logging configuration is picked up via the following statements:
host_builder.ConfigureLogging( configure_logging_callback );
... and the "configure_logging_callback" function contains these statements:
logging.ClearProviders();
logging.AddConsole();
logging.AddDebug();
logging.AddEventSourceLogger();
logging.AddEventLog();
logging.AddConfiguration( app_settings.config.GetSection( "Logging" ) );
I have a utility class with a "show_log_level" method, as shown below:
public static void show_log_level( ILogger logger )
{
Type category_name = logger.GetType().GetInterfaces()[ 0 ].GetGenericArguments()[ 0 ];
Console.WriteLine( "logger<" + category_name + ">:" );
logger.LogTrace( "- LogTrace message" );
logger.LogDebug( "- LogDebug message" );
logger.LogInformation( "- LogInformation message" );
logger.LogWarning( "- LogWarning message" );
logger.LogError( "- LogError message" );
logger.LogCritical( "- LogCritical message" );
Console.WriteLine( $#"- LogLevel.Trace enabled: {logger.IsEnabled( LogLevel.Trace )}" );
Console.WriteLine( $#"- LogLevel.Debug enabled: {logger.IsEnabled( LogLevel.Debug )}" );
Console.WriteLine( $#"- LogLevel.Information enabled: {logger.IsEnabled( LogLevel.Information )}" );
Console.WriteLine( $#"- LogLevel.Warning enabled: {logger.IsEnabled( LogLevel.Warning )}" );
Console.WriteLine( $#"- LogLevel.Error enabled: {logger.IsEnabled( LogLevel.Error )}" );
Console.WriteLine( $#"- LogLevel.Critical enabled: {logger.IsEnabled( LogLevel.Critical )}" );
Console.WriteLine( $#"- LogLevel.None enabled: {logger.IsEnabled( LogLevel.None )}" );
}
I then perform the following tests:
TEST 1 - JSON:
"Logging": {
"LogLevel": {
"Default": "Error"
},
"Console": {
"IncludeScopes": true,
"LogLevel": {
"website1": "Error"
}
}
}
TEST 1 - OUTPUT: Expected result - only Error and above is enabled
logger<website1.show_config>:
fail: website1.show_config[0]
=> ConnectionId:0HMF57AH5JJPF => RequestPath:/ RequestId:0HMF57AH5JJPF:00000001
- LogError message
crit: website1.show_config[0]
=> ConnectionId:0HMF57AH5JJPF => RequestPath:/ RequestId:0HMF57AH5JJPF:00000001
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: False
- LogLevel.Warning enabled: False
- LogLevel.Error enabled: True
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False
TEST 2 - JSON:
"Logging": {
"LogLevel": {
"Default": "Information"
},
"Console": {
"IncludeScopes": true,
"LogLevel": {
"website1": "Error"
}
}
}
TEST 2 - OUTPUT: Why is LogLevel "Information" enabled? - as only "Error" and above is specified in "Console" provider
fail: website1.show_config[0]
=> ConnectionId:0HMF57B2RAQUB => RequestPath:/ RequestId:0HMF57B2RAQUB:00000001
- LogError message
crit: website1.show_config[0]
=> ConnectionId:0HMF57B2RAQUB => RequestPath:/ RequestId:0HMF57B2RAQUB:00000001
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: True
- LogLevel.Warning enabled: True
- LogLevel.Error enabled: True
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False
TEST 3 - JSON:
"Logging": {
"LogLevel": {
"Default": "Information",
"website1": "Error"
},
"Console": {
"IncludeScopes": true,
"LogLevel": {
"website1": "Error"
}
}
}
TEST 3 - OUTPUT: Adding "website1" category to "Logging:LogLevel" now gives expected result - only Error and above is enabled, but why do I have to specify it earlier in the configuration? Are minimum log levels retained when "Default" is present (no clue)?
fail: website1.show_config[0]
=> ConnectionId:0HMF57C76CSFT => RequestPath:/ RequestId:0HMF57C76CSFT:00000001
- LogError message
crit: website1.show_config[0]
=> ConnectionId:0HMF57C76CSFT => RequestPath:/ RequestId:0HMF57C76CSFT:00000001
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: False
- LogLevel.Warning enabled: False
- LogLevel.Error enabled: True
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False
Is there any official documentation that describes:
How the "Logging" configuration is processed (priorities, rules, etc.)?
How do the various log levels become enabled or disabled depending on the JSON properties and values that are present?
What are the specific JSON properties and values that can be present in the "Logging" configuration?
Thanks in advance.
Thanks to #Fei Han for pointing me to the updated .Net 6.0 documentation on log filtering which contains much more detail than the .Net 5.0 documentation I was referencing. Using the .Net 6 documentation, the behavior becomes much clearer, see annotated results below:
TEST 1 - JSON
"Logging": {
"LogLevel": { // ALL providers, LogLevel applies to all the enabled providers.
"Default": "Error" // Default logging, Error and higher.
},
"Console": { // These setting apply to the Console provider
"IncludeScopes": true,
"LogLevel": {
"website1": "Error" // All website1* categories, Error and higher.
}
}
}
TEST 1 - OUTPUT:
logger<website1.show_config>: // Only Error and above will be logged for website1* categories
fail: website1.show_config[0]
- LogError message
crit: website1.show_config[0]
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: False
- LogLevel.Warning enabled: False
- LogLevel.Error enabled: True // Minimum level found at Logging:LogLevel:Default
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False
TEST 2 - JSON:
"Logging": {
"LogLevel": { // ALL providers
"Default": "Information" // Default logging, Information and higher
},
"Console": { // These setting apply to the Console provider
"IncludeScopes": true,
"LogLevel": {
"website1": "Error" // Error and above will be logged
}
}
}
TEST 2 - OUTPUT:
fail: website1.show_config[0] // Only Error and above will be logged for website1* categories
- LogError message
crit: website1.show_config[0]
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: True // Minimum level found at Logging:LogLevel:Default
- LogLevel.Warning enabled: True
- LogLevel.Error enabled: True
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False
TEST 3 - JSON:
"Logging": {
"LogLevel": { // ALL providers
"Default": "Information", // Default logging, Information and higher
"website1": "Error" // All website1* categories, Error and higher.
},
"Console": { // These setting apply to the Console provider
"IncludeScopes": true,
"LogLevel": {
"website1": "Error" // Error and above will be logged
}
}
}
TEST 3 - OUTPUT:
fail: website1.show_config[0] // Only Error and above will be logged for website1* categories
- LogError message
crit: website1.show_config[0]
- LogCritical message
- LogLevel.Trace enabled: False
- LogLevel.Debug enabled: False
- LogLevel.Information enabled: False
- LogLevel.Warning enabled: False
- LogLevel.Error enabled: True // Minimum level found in Logging:Console:LogLevel:website1
- LogLevel.Critical enabled: True
- LogLevel.None enabled: False

JQ only returns one CIDR block from AWS CLI

I am trying to read the CIDR blocks from the VPCs in AWS on the AWS CLI. I will use this in a script when I'm done. I am using jq to parse the info:
aws ec2 describe-vpcs --region=us-east-1 | jq -r '.Vpcs[].CidrBlock'
10.200.3.0/24
However, jq only returns one of the two CIDR blocks in the VPC. This is the original json:
{
"Vpcs": [
{
"CidrBlock": "10.200.3.0/24",
"DhcpOptionsId": "dopt-d0aa95ab",
"State": "available",
"VpcId": "vpc-00de11103235ec567",
"OwnerId": "046480487130",
"InstanceTenancy": "default",
"Ipv6CidrBlockAssociationSet": [
{
"AssociationId": "vpc-cidr-assoc-09f19d81c2e4566b9",
"Ipv6CidrBlock": "2600:1f18:1f7:300::/56",
"Ipv6CidrBlockState": {
"State": "associated"
},
"NetworkBorderGroup": "us-east-1"
}
],
"CidrBlockAssociationSet": [
{
"AssociationId": "vpc-cidr-assoc-0511a5d459f937899",
"CidrBlock": "10.238.3.0/24",
"CidrBlockState": {
"State": "associated"
}
},
{
"AssociationId": "vpc-cidr-assoc-05ad73e8c515a470f",
"CidrBlock": "100.140.0.0/27",
"CidrBlockState": {
"State": "associated"
}
}
],
"IsDefault": false,
"Tags": [
{
"Key": "environment",
"Value": "int01"
},
{
"Key": "Name",
"Value": "company-int01-vpc"
},
{
"Key": "project",
"Value": "company"
}
]
}
]
}
Why does jq only return part of the info I'm after? I need to get all VPC CIDR blocks in the output.
You have two keys CidrBlock and CidrBlockAssociationSet under the Vpcs array.
aws ec2 describe-vpcs --region=us-east-1 |
jq -r '.Vpcs[] | .CidrBlock, .CidrBlockAssociationSet[].CidrBlock'
10.200.3.0/24
10.238.3.0/24
100.140.0.0/27
and this is an invariant solution:
aws ... | jq -r '.. | if type == "object" and has("CidrBlock") then .CidrBlock else empty end'
and, inspired by jq170727's answer, a less expressive form:
aws ... | jq -r '.. | objects | .CidrBlock // empty'
Here is a filter inspired by Dmitry's answer which is slightly shorter: .. | .CidrBlock? | values
Try it online!

Corda: deploy node on a docker and cannot reach to it

I am trying to deploy node with the official docker image with following command
docker run -ti \
--memory=2048m \
--cpus=2 \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/config:/etc/corda \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/certificates:/opt/corda/certificates \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/persistence:/opt/corda/persistence \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/logs:/opt/corda/logs \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/cordapps:/opt/corda/cordapps \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/additional-node-infos:/opt/corda/additional-node-infos \
-v /Users/aliceguo/IdeaProjects/car-cordapp/build/nodes/PartyC/network-parameters:/opt/corda/network-parameters \
-p 10011:10011 \
-p 10012:10012 \
corda/corda-corretto-5.0-snapshot.
And the node seems to start successfully, but I cannot connect to it via rpc from my laptop (the docker container is on my laptop as well). I will attach some log and screenshot below. Any help would be appreciated!
Node Log:
[INFO ] 2019-07-19T03:21:23,163Z [main] cliutils.CordaCliWrapper.call - Application Args: --base-directory /opt/corda --config-file /etc/corda/node.conf
[INFO ] 2019-07-19T03:21:24,146Z [main] manifests.Manifests.info - 115 attributes loaded from 152 stream(s) in 61ms, 115 saved, 2353 ignored: ["ActiveMQ-Version", "Agent-Class", "Ant-Version", "Application-Class", "Application-ID", "Application-Library-Allowable-Codebase", "Application-Name", "Application-Version", "Archiver-Version", "Automatic-Module-Name", "Bnd-LastModified", "Branch", "Build-Date", "Build-Host", "Build-Id", "Build-Java-Version", "Build-Jdk", "Build-Job", "Build-Number", "Build-Timestamp", "Built-By", "Built-OS", "Built-Status", "Bundle-Activator", "Bundle-Category", "Bundle-ClassPath", "Bundle-Copyright", "Bundle-Description", "Bundle-DocURL", "Bundle-License", "Bundle-ManifestVersion", "Bundle-Name", "Bundle-NativeCode", "Bundle-RequiredExecutionEnvironment", "Bundle-SymbolicName", "Bundle-Vendor", "Bundle-Version", "Caller-Allowable-Codebase", "Can-Redefine-Classes", "Can-Retransform-Classes", "Can-Set-Native-Method-Prefix", "Caplets", "Change", "Class-Path", "Codebase", "Corda-Platform-Version", "Corda-Release-Version", "Corda-Revision", "Corda-Vendor", "Created-By", "DynamicImport-Package", "Eclipse-BuddyPolicy", "Eclipse-LazyStart", "Export-Package", "Extension-Name", "Fragment-Host", "Gradle-Version", "Hibernate-JpaVersion", "Hibernate-VersionFamily", "Implementation-Build", "Implementation-Build-Date", "Implementation-Title", "Implementation-URL", "Implementation-Url", "Implementation-Vendor", "Implementation-Vendor-Id", "Implementation-Version", "Import-Package", "Include-Resource", "JCabi-Build", "JCabi-Date", "JCabi-Version", "JVM-Args", "Java-Agents", "Java-Vendor", "Java-Version", "Kotlin-Runtime-Component", "Kotlin-Version", "Liquibase-Package", "Log4jReleaseKey", "Log4jReleaseManager", "Log4jReleaseVersion", "Main-Class", "Main-class", "Manifest-Version", "Min-Java-Version", "Min-Update-Version", "Module-Email", "Module-Origin", "Module-Owner", "Module-Source", "Multi-Release", "Originally-Created-By", "Os-Arch", "Os-Name", "Os-Version", "Permissions", "Premain-Class", "Private-Package", "Provide-Capability", "Require-Capability", "SCM-Revision", "SCM-url", "Scm-Connection", "Scm-Revision", "Scm-Url", "Service-Component", "Specification-Title", "Specification-Vendor", "Specification-Version", "System-Properties", "Tool", "Trusted-Library", "X-Compile-Source-JDK", "X-Compile-Target-JDK"]
[INFO ] 2019-07-19T03:21:24,188Z [main] BasicInfo.printBasicNodeInfo - Logs can be found in : /opt/corda/logs
[INFO ] 2019-07-19T03:21:25,096Z [main] subcommands.ValidateConfigurationCli.logRawConfig$node - Actual configuration:
{
"additionalNodeInfoPollingFrequencyMsec" : 5000,
"additionalP2PAddresses" : [],
"attachmentCacheBound" : 1024,
"baseDirectory" : "/opt/corda",
"certificateChainCheckPolicies" : [],
"cordappSignerKeyFingerprintBlacklist" : [
"56CA54E803CB87C8472EBD3FBC6A2F1876E814CEEBF74860BD46997F40729367",
"83088052AF16700457AE2C978A7D8AC38DD6A7C713539D00B897CD03A5E5D31D",
"6F6696296C3F58B55FB6CA865A025A3A6CC27AD17C4AFABA1E8EF062E0A82739"
],
"crlCheckSoftFail" : true,
"dataSourceProperties" : "*****",
"database" : {
"exportHibernateJMXStatistics" : false,
"initialiseAppSchema" : "UPDATE",
"initialiseSchema" : true,
"mappedSchemaCacheSize" : 100,
"transactionIsolationLevel" : "REPEATABLE_READ"
},
"detectPublicIp" : false,
"devMode" : true,
"emailAddress" : "admin#company.com",
"extraNetworkMapKeys" : [],
"flowMonitorPeriodMillis" : {
"nanos" : 0,
"seconds" : 60
},
"flowMonitorSuspensionLoggingThresholdMillis" : {
"nanos" : 0,
"seconds" : 60
},
"flowTimeout" : {
"backoffBase" : 1.8,
"maxRestartCount" : 6,
"timeout" : {
"nanos" : 0,
"seconds" : 30
}
},
"jarDirs" : [],
"jmxReporterType" : "JOLOKIA",
"keyStorePassword" : "*****",
"lazyBridgeStart" : true,
"myLegalName" : "O=PartyC,L=New York,C=US",
"noLocalShell" : false,
"p2pAddress" : "localhost:10011",
"rpcSettings" : {
"address" : "localhost:10012",
"adminAddress" : "localhost:10052",
"standAloneBroker" : false,
"useSsl" : false
},
"rpcUsers" : [],
"security" : {
"authService" : {
"dataSource" : {
"passwordEncryption" : "NONE",
"type" : "INMEMORY",
"users" : [
{
"ignoresFallbacks" : false,
"resolved" : true,
"value" : {
"loadFactor" : 0.75,
"modCount" : 3,
"size" : 3,
"table" : {},
"threshold" : 3
}
}
]
}
}
},
"trustStorePassword" : "*****",
"useTestClock" : false,
"verifierType" : "InMemory"
}
[INFO ] 2019-07-19T03:21:25,119Z [main] internal.Node.logStartupInfo - Vendor: Corda Open Source
[INFO ] 2019-07-19T03:21:25,119Z [main] internal.Node.logStartupInfo - Release: 5.0-SNAPSHOT
[INFO ] 2019-07-19T03:21:25,119Z [main] internal.Node.logStartupInfo - Platform Version: 5
[INFO ] 2019-07-19T03:21:25,119Z [main] internal.Node.logStartupInfo - Revision: df19b444ddd32d3afd10ed0b76c1b2f68d985968
[INFO ] 2019-07-19T03:21:25,119Z [main] internal.Node.logStartupInfo - PID: 19
[INFO ] 2019-07-19T03:21:25,120Z [main] internal.Node.logStartupInfo - Main class: /opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-node-5.0-SNAPSHOT.jar
[INFO ] 2019-07-19T03:21:25,120Z [main] internal.Node.logStartupInfo - CommandLine Args: -Xmx512m -XX:+UseG1GC -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -javaagent:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/quasar-core-0.7.10-jdk8.jar=x(antlr**;bftsmart**;co.paralleluniverse**;com.codahale**;com.esotericsoftware**;com.fasterxml**;com.google**;com.ibm**;com.intellij**;com.jcabi**;com.nhaarman**;com.opengamma**;com.typesafe**;com.zaxxer**;de.javakaffee**;groovy**;groovyjarjarantlr**;groovyjarjarasm**;io.atomix**;io.github**;io.netty**;jdk**;junit**;kotlin**;net.bytebuddy**;net.i2p**;org.apache**;org.assertj**;org.bouncycastle**;org.codehaus**;org.crsh**;org.dom4j**;org.fusesource**;org.h2**;org.hamcrest**;org.hibernate**;org.jboss**;org.jcp**;org.joda**;org.junit**;org.mockito**;org.objectweb**;org.objenesis**;org.slf4j**;org.w3c**;org.xml**;org.yaml**;reflectasm**;rx**;org.jolokia**;com.lmax**;picocli**;liquibase**;com.github.benmanes**;org.json**;org.postgresql**;nonapi.io.github.classgraph**) -Dcorda.dataSourceProperties.dataSource.url=jdbc:h2:file:/opt/corda/persistence/persistence;DB_CLOSE_ON_EXIT=FALSE;WRITE_DELAY=0;LOCK_TIMEOUT=10000 -Dvisualvm.display.name=Corda -Djava.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT -Dcapsule.app=net.corda.node.Corda_5.0-SNAPSHOT -Dcapsule.dir=/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT -Dcapsule.jar=/opt/corda/bin/corda.jar -Djava.security.egd=file:/dev/./urandom
[INFO ] 2019-07-19T03:21:25,120Z [main] internal.Node.logStartupInfo - bootclasspath: /usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/resources.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/rt.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/jsse.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/jce.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/charsets.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/lib/jfr.jar:/usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre/classes
[INFO ] 2019-07-19T03:21:25,120Z [main] internal.Node.logStartupInfo - classpath: /opt/corda/bin/corda.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-shell-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-rpc-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-node-api-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-tools-cliutils-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-common-configuration-parsing-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-common-validation-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-common-logging-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-confidential-identities-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/log4j-slf4j-impl-2.9.1.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/log4j-web-2.9.1.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/jul-to-slf4j-1.7.25.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-jackson-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-serialization-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/corda-core-5.0-SNAPSHOT.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/kotlin-stdlib-jdk8-1.2.71.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/jackson-module-kotlin-2.9.5.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/kotlin-reflect-1.2.71.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/quasar-core-0.7.10-jdk8.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/kryo-serializers-0.42.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/kryo-4.0.0.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/jimfs-1.1.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/metrics-new-relic-1.1.1.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/guava-25.1-jre.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/caffeine-2.6.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/disruptor-3.4.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/commons-collections4-4.1.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/artemis-amqp-protocol-2.6.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/artemis-server-2.6.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/artemis-jdbc-store-2.6.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/artemis-journal-2.6.2.jar:/opt/corda/.capsule/apps/net.corda.node.Corda_5.0-SNAPSHOT/art...
In order to solve this, you need to bind the ports to 0.0.0.0:xxxx instead of localhost:xxxx in the node.conf
"p2pAddress" : "localhost:10011",
"rpcSettings" : {
"address" : "localhost:10012",
"adminAddress" : "localhost:10052",
"standAloneBroker" : false,
"useSsl" : false
},

Resources