.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "YAHNS-RACKUP 1" .TH YAHNS-RACKUP 1 "1994-10-02" "yahns 1.12.3" "yahns user manual" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" yahns\-rackup \- a rackup\-like command to launch yahns .SH "SYNOPSIS" .IX Header "SYNOPSIS" yahns-rackup [\-E \s-1RACK_ENV\s0] [\-O worker_threads=NUM] [\s-1RACKUP_FILE\s0] .SH "DESCRIPTION" .IX Header "DESCRIPTION" A \fIrackup\fR\|(1)\-like command to launch Rack applications using yahns. It is expected to start in your application root (\s-1APP_ROOT\s0). .SH "RACKUP FILE" .IX Header "RACKUP FILE" This defaults to \*(L"config.ru\*(R" in \s-1APP_ROOT\s0. It should be the same file used by \fIrackup\fR\|(1) and other Rack launchers, it uses the *Rack::Builder* \s-1DSL\s0 documented at: .PP .SH "YAHNS OPTIONS" .IX Header "YAHNS OPTIONS" .IP "\-O client_timeout=SECONDS" 4 .IX Item "-O client_timeout=SECONDS" Defines the timeout expiring idle connections. .Sp Increase this if your application takes longer to run than the default timeout. Lower this if you run out of FDs. .Sp Default: 15 (seconds) .IP "\-O listen=ADDRESS[,ADDRESS...]" 4 .IX Item "-O listen=ADDRESS[,ADDRESS...]" Listens on a given \s-1ADDRESS\s0. \s-1ADDRESS\s0 may be in the form of \&\s-1HOST:PORT\s0 or \s-1PATH\s0, \s-1HOST:PORT\s0 is taken to mean a \s-1TCP\s0 socket and \s-1PATH\s0 is meant to be a path to a \s-1UNIX\s0 domain socket. Defaults to \*(L"0.0.0.0:9292\*(R" (all addresses on \s-1TCP\s0 port 9292). Multiple addresses may be separated with commas. .IP "\-O stderr_path=PATHNAME" 4 .IX Item "-O stderr_path=PATHNAME" Allow redirecting \f(CW$stderr\fR to a given path. Unlike doing this from the shell, this allows the yahns process to know the path its writing to and rotate the file if it is used for logging. The file will be opened with the O_APPEND flag and writes synchronized to the kernel (but not necessarily to _disk_) so multiple processes can safely append to it. .Sp If you are daemonizing and using the default logger, it is important to specify this as errors will otherwise be lost to /dev/null. Some applications/libraries may also triggering warnings that go to stderr, and they will end up here. .Sp Default: /dev/null if daemonized, controlling terminal if not .IP "\-O stdout_path=PATH" 4 .IX Item "-O stdout_path=PATH" Same as stderr_path, except for \f(CW$stdout\fR. Not many applications write to \f(CW$stdout\fR, but any that do will have their output written here. It is safe to point this to the same location a stderr_path. Like stderr_path, this defaults to /dev/null when daemonized. .Sp Default: /dev/null if daemonized, controlling terminal if not .IP "\-O worker_threads=INTEGER" 4 .IX Item "-O worker_threads=INTEGER" This controls the number of threads for application processing. Each queue has its own thread pool. Increase this number if your applications are able to use more threads effectively or if either (or both) input/output buffering are disabled. Lower this number if you do not need multi-thread concurrency at all. .Sp Default: 7 .SH "RACKUP OPTIONS" .IX Header "RACKUP OPTIONS" .IP "\-D, \-\-daemonize" 4 .IX Item "-D, --daemonize" Run daemonized in the background. The process is detached from the controlling terminal and stdin is redirected to /dev/null. Unless specified via stderr_path and stdout_path, stderr and stdout will also be redirected to \*(L"/dev/null\*(R". .IP "\-E, \-\-env \s-1RACK_ENV\s0" 4 .IX Item "-E, --env RACK_ENV" Run under the given \s-1RACK_ENV\s0. See the \*(L"\s-1RACK\s0 \s-1ENVIRONMENT\s0\*(R" section for more details. .IP "\-o, \-\-host \s-1HOST\s0" 4 .IX Item "-o, --host HOST" Listen on a \s-1TCP\s0 socket belonging to \s-1HOST\s0, default is \&\*(L"0.0.0.0\*(R" (all addresses). If specified multiple times on the command-line, only the last-specified value takes effect. This option only exists for compatibility with the \fIrackup\fR\|(1) command, use of \*(L"\-l\*(R"/\*(L"\-\-listen\*(R" switch is recommended instead. .IP "\-p, \-\-port \s-1PORT\s0" 4 .IX Item "-p, --port PORT" Listen on the specified \s-1TCP\s0 \s-1PORT\s0, default is 9292. If specified multiple times on the command-line, only the last-specified value takes effect. This option only exists for compatibility with the \fIrackup\fR\|(1) command, use of \*(L"\-l\*(R"/\*(L"\-\-listen\*(R" switch is recommended instead. .SH "RUBY OPTIONS" .IX Header "RUBY OPTIONS" .IP "\-e, \-\-eval \s-1LINE\s0" 4 .IX Item "-e, --eval LINE" Evaluate a \s-1LINE\s0 of Ruby code. This evaluation happens immediately as the command-line is being parsed. .IP "\-d, \-\-debug" 4 .IX Item "-d, --debug" Turn on debug mode, the \f(CW$DEBUG\fR variable is set to true. .IP "\-w, \-\-warn" 4 .IX Item "-w, --warn" Turn on verbose warnings, the \f(CW$VERBOSE\fR variable is set to true. .IP "\-I, \-\-include \s-1PATH\s0" 4 .IX Item "-I, --include PATH" Specify \f(CW$LOAD_PATH\fR. \s-1PATH\s0 will be prepended to \f(CW$LOAD_PATH\fR. The ':' character may be used to delimit multiple directories. This directive may be used more than once. Modifications to \&\f(CW$LOAD_PATH\fR take place immediately and in the order they were specified on the command-line. .IP "\-r, \-\-require \s-1LIBRARY\s0" 4 .IX Item "-r, --require LIBRARY" Require a specified \s-1LIBRARY\s0 before executing the application. The \&\*(L"require\*(R" statement will be executed immediately and in the order they were specified on the command-line. .SH "SIGNALS" .IX Header "SIGNALS" See \fIyahns\fR\|(1) .SH "FILES" .IX Header "FILES" See Rack documentation for a description of the rackup file format. .SH "ENVIRONMENT VARIABLES" .IX Header "ENVIRONMENT VARIABLES" The \s-1RACK_ENV\s0 variable is set by the aforementioned \-E switch. If \s-1RACK_ENV\s0 is already set, it will be used unless \-E is used. See rackup documentation for more details. .SH "CONTACT" .IX Header "CONTACT" All feedback welcome via plain-text mail to mailto:yahns\-public@yhbt.net No subscription is necessary to post to the mailing list. List archives are available at http://yhbt.net/yahns\-public/ .SH "COPYRIGHT" .IX Header "COPYRIGHT" Copyright (C) 2013\-2016 all contributors mailto:yahns\-public@yhbt.net License: \s-1GPL\-3\s0.0+ http://www.gnu.org/licenses/gpl\-3.0.txt .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIyahns\fR\|(1), \fIyahns_config\fR\|(5), Rack::Builder RDoc , Rack RDoc , Rackup HowTo