You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Martynas Jusevičius <ma...@atomgraph.com> on 2021/05/15 08:19:59 UTC
Tomcat fails to start in Docker on Amazon ECS
Hi,
I have a Docker image that extends tomcat:9.0.39-jdk11 and at the very
end of the entrypoint script calls 'catalina.sh run'.
This has worked fine both on my local Windows and on a CentOS server.
However when I start a container on Amazon ECS with AMI Linux, I get
the error below when catalina.sh is called.
This has obviously to do with the java command, but why? Has anyone
experienced something similar?
NOTE: Picked up JDK_JAVA_OPTIONS:
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
Usage: java [options] <mainclass> [args...]
(to execute a class)
or java [options] -jar <jarfile> [args...]
(to execute a jar file)
or java [options] -m <module>[/<mainclass>] [args...]
java [options] --module <module>[/<mainclass>] [args...]
(to execute the main class in a module)
or java [options] <sourcefile> [args]
(to execute a single source-file program)
" Arguments following the main class, source file, -jar <jarfile>,"
-m or --module <module>/<mainclass> are passed as the arguments to
main class.
where options include:
-cp <class search path of directories and zip/jar files>
-classpath <class search path of directories and zip/jar files>
--class-path <class search path of directories and zip/jar files>
" A : separated list of directories, JAR archives,"
and ZIP archives to search for class files.
-p <module path>
--module-path <module path>...
" A : separated list of directories, each directory"
is a directory of modules.
--upgrade-module-path <module path>...
" A : separated list of directories, each directory"
is a directory of modules that replace upgradeable
modules in the runtime image
" --add-modules <module name>[,<module name>...]"
root modules to resolve in addition to the initial module.
" <module name> can also be ALL-DEFAULT, ALL-SYSTEM,"
ALL-MODULE-PATH.
--list-modules
list observable modules and exit
-d <module name>
--describe-module <module name>
describe a module and exit
--dry-run create VM and load main class but do not execute main method.
The --dry-run option may be useful for validating the
command-line options such as the module system configuration.
--validate-modules
validate all modules and exit
The --validate-modules option may be useful for finding
conflicts and other errors with modules on the module path.
-D<name>=<value>
set a system property
-verbose:[class|module|gc|jni]
enable verbose output
-version print product version to the error stream and exit
--version print product version to the output stream and exit
-showversion print product version to the error stream and continue
--show-version
print product version to the output stream and continue
--show-module-resolution
show module resolution output during startup
-? -h -help
print this help message to the error stream
--help print this help message to the output stream
-X print help on extra options to the error stream
--help-extra print help on extra options to the output stream
-ea[:<packagename>...|:<classname>]
-enableassertions[:<packagename>...|:<classname>]
enable assertions with specified granularity
-da[:<packagename>...|:<classname>]
-disableassertions[:<packagename>...|:<classname>]
disable assertions with specified granularity
-esa | -enablesystemassertions
enable system assertions
-dsa | -disablesystemassertions
disable system assertions
-agentlib:<libname>[=<options>]
" load native agent library <libname>, e.g. -agentlib:jdwp"
see also -agentlib:jdwp=help
-agentpath:<pathname>[=<options>]
load native agent library by full pathname
-javaagent:<jarpath>[=<options>]
" load Java programming language agent, see
java.lang.instrument"
-splash:<imagepath>
show splash screen with specified image
HiDPI scaled images are automatically supported and used
" if available. The unscaled image filename, e.g. image.ext,"
should always be passed as the argument to the -splash option.
The most appropriate scaled image provided will be picked up
automatically.
See the SplashScreen API documentation for more information
@argument files
one or more argument files containing options
-disable-@files
prevent further argument file expansion
--enable-preview
allow classes to depend on preview features of this release
"To specify an argument for a long option, you can use --<name>=<value> or"
--<name> <value>.
Martynas
atomgraph.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat fails to start in Docker on Amazon ECS
Posted by Martynas Jusevičius <ma...@atomgraph.com>.
My bad :) CATALINA_OPTS was malformed.
On Sat, May 15, 2021 at 10:19 AM Martynas Jusevičius
<ma...@atomgraph.com> wrote:
>
> Hi,
>
> I have a Docker image that extends tomcat:9.0.39-jdk11 and at the very
> end of the entrypoint script calls 'catalina.sh run'.
>
> This has worked fine both on my local Windows and on a CentOS server.
> However when I start a container on Amazon ECS with AMI Linux, I get
> the error below when catalina.sh is called.
> This has obviously to do with the java command, but why? Has anyone
> experienced something similar?
>
> NOTE: Picked up JDK_JAVA_OPTIONS:
> --add-opens=java.base/java.lang=ALL-UNNAMED
> --add-opens=java.base/java.io=ALL-UNNAMED
> --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
> Usage: java [options] <mainclass> [args...]
> (to execute a class)
> or java [options] -jar <jarfile> [args...]
> (to execute a jar file)
> or java [options] -m <module>[/<mainclass>] [args...]
> java [options] --module <module>[/<mainclass>] [args...]
> (to execute the main class in a module)
> or java [options] <sourcefile> [args]
> (to execute a single source-file program)
> " Arguments following the main class, source file, -jar <jarfile>,"
> -m or --module <module>/<mainclass> are passed as the arguments to
> main class.
> where options include:
> -cp <class search path of directories and zip/jar files>
> -classpath <class search path of directories and zip/jar files>
> --class-path <class search path of directories and zip/jar files>
> " A : separated list of directories, JAR archives,"
> and ZIP archives to search for class files.
> -p <module path>
> --module-path <module path>...
> " A : separated list of directories, each directory"
> is a directory of modules.
> --upgrade-module-path <module path>...
> " A : separated list of directories, each directory"
> is a directory of modules that replace upgradeable
> modules in the runtime image
> " --add-modules <module name>[,<module name>...]"
> root modules to resolve in addition to the initial module.
> " <module name> can also be ALL-DEFAULT, ALL-SYSTEM,"
> ALL-MODULE-PATH.
> --list-modules
> list observable modules and exit
> -d <module name>
> --describe-module <module name>
> describe a module and exit
> --dry-run create VM and load main class but do not execute main method.
> The --dry-run option may be useful for validating the
> command-line options such as the module system configuration.
> --validate-modules
> validate all modules and exit
> The --validate-modules option may be useful for finding
> conflicts and other errors with modules on the module path.
> -D<name>=<value>
> set a system property
> -verbose:[class|module|gc|jni]
> enable verbose output
> -version print product version to the error stream and exit
> --version print product version to the output stream and exit
> -showversion print product version to the error stream and continue
> --show-version
> print product version to the output stream and continue
> --show-module-resolution
> show module resolution output during startup
> -? -h -help
> print this help message to the error stream
> --help print this help message to the output stream
> -X print help on extra options to the error stream
> --help-extra print help on extra options to the output stream
> -ea[:<packagename>...|:<classname>]
> -enableassertions[:<packagename>...|:<classname>]
> enable assertions with specified granularity
> -da[:<packagename>...|:<classname>]
> -disableassertions[:<packagename>...|:<classname>]
> disable assertions with specified granularity
> -esa | -enablesystemassertions
> enable system assertions
> -dsa | -disablesystemassertions
> disable system assertions
> -agentlib:<libname>[=<options>]
> " load native agent library <libname>, e.g. -agentlib:jdwp"
> see also -agentlib:jdwp=help
> -agentpath:<pathname>[=<options>]
> load native agent library by full pathname
> -javaagent:<jarpath>[=<options>]
> " load Java programming language agent, see
> java.lang.instrument"
> -splash:<imagepath>
> show splash screen with specified image
> HiDPI scaled images are automatically supported and used
> " if available. The unscaled image filename, e.g. image.ext,"
> should always be passed as the argument to the -splash option.
> The most appropriate scaled image provided will be picked up
> automatically.
> See the SplashScreen API documentation for more information
> @argument files
> one or more argument files containing options
> -disable-@files
> prevent further argument file expansion
> --enable-preview
> allow classes to depend on preview features of this release
> "To specify an argument for a long option, you can use --<name>=<value> or"
> --<name> <value>.
>
> Martynas
> atomgraph.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org