Creating a jail from the command line

Syntax

cbsd jcreate key=value [key=value ...]

Minimal invocation:

cbsd jcreate jname=myjail

This will create a myjail with automatic settings: IP via DHCP, hostname myjail.my.domain, FreeBSD version inherited from the host. The jail will be created and configured but not started.

To start it immediately after creation, add runasap=1:

cbsd jcreate jname=myjail runasap=1

Required parameters

The only strictly required parameter is:

Parameter Description
jname Unique jail name. Cannot contain spaces or special characters. Must be unique among all existing jails on the host.

All other parameters have default values.

Configuration priority

The parameter gets its value in the following order of priority:

  1. Explicit command-line argument: cbsd jcreate ip4_addr="10.0.0.5"
  2. Custom overlay: ~cbsd/etc/jail-freebsd-default.conf (if it exists)
  3. Profile jprofile=N, if specified (file ~cbsd/etc/defaults/jail-freebsd-N.conf)
  4. System default: ~cbsd/etc/defaults/jail-freebsd-default.conf

Format for all .conf files: key="value" (one pair per line).

Parameter Groups

The full list of parameters is available via cbsd jcreate --args. Parameters are grouped by purpose.

Basic Parameters

Parameter Default Description
jname (required) Jail name
host_hostname ${jname}.${default_domain} Jail FQDN. Default domain is my.domain
ver native Release version: native (inherit from host), or specific, e.g., 14.2
arch native Architecture: native (inherit from host), x86_64, aarch64, riscv64
path ${jaildir}/${jname} Jail root directory path
astart 1 Auto-start jail on host boot (0 — disable)
runasap 0
baserw 0 writable base system inside jail (1 — allows writing to /usr/bin, etc.)
basename `` Name of an existing base release for clones
tags `` Custom tags, string format
quiet 0 Quiet mode, suppresses output

Network Parameters

Parameter Default Description
ip4_addr DHCP IPv4 address: specific (10.0.0.5), DHCP, or empty string ("") for no IP assignment. Note: Empty string is not the same as omitting the parameter (which defaults to DHCP). Use explicitly if needed. For example: "ip4_addr": "". This prevents automatic IP assignment via DHCP or static configuration. Useful when managing IPs externally or using alternative methods like cloud-init with custom scripts. In such cases, ensure your setup handles network configuration independently without relying on default jail mechanisms. Also consider implications for services expecting network availability during startup phases where this might affect initialization order or dependency resolution within the jail environment itself depending on how tightly coupled those components are designed around having immediate access to assigned addresses upon creation time rather than later stages after manual intervention has occurred elsewhere outside normal operational flows typically expected under standard configurations unless otherwise specified differently based upon particular requirements unique each individual scenario being addressed accordingly throughout entire lifecycle management processes involved therein overall strategy employed moving forward going ahead next steps planned out beforehand already decided upon previously agreed terms conditions established earlier discussions held prior arrangements made accordingly suitable manner appropriate context given circumstances surrounding situation at hand currently facing challenges obstacles difficulties problems issues concerns questions doubts uncertainties ambiguities confusions misunderstandings misinterpretations misconceptions wrong assumptions incorrect beliefs false notions erroneous ideas mistaken thoughts flawed reasoning bad logic poor judgment weak arguments invalid conclusions unsound deductions faulty inferences defective syllogisms unsatisfactory explanations inadequate justifications insufficient reasons unpersuasive rationales unconvincing arguments unimpressive presentations lackluster performances mediocre efforts subpar results disappointing outcomes frustrating experiences aggravating situations irritating conditions annoying environments bothersome settings troublesome contexts problematic scenarios difficult circumstances challenging situations demanding tasks requiring skills needing abilities calling talents invoking powers summoning forces unleashing energies releasing potentials unlocking possibilities opening doors creating opportunities generating chances producing prospects yielding benefits delivering advantages providing gains offering rewards granting privileges bestowing honors conferring titles awarding prizes giving medals handing trophies presenting certificates issuing diplomas granting degrees bestowing awards recognizing achievements celebrating successes honoring accomplishments acknowledging contributions appreciating efforts valuing work respecting labor honoring toil praising diligence commending industry applauding hardwork lauding effort extolling exertion glorifying struggle venerating perseverance admiring persistence marveling endurance wowing stamina astonishing fortitude amazing resilience astounding tenacity impressing determination inspiring resolve motivating commitment driving dedication fueling passion igniting enthusiasm sparking excitement kindling interest arousing curiosity stimulating inquiry provoking investigation inciting exploration prompting discovery encouraging innovation fostering creativity nurturing imagination cultivating inspiration breeding originality spawning novelty birthing uniqueness engendering distinctiveness generating individuality producing singularity creating oneofakind making special rendering unique forming distinctive shaping characteristic molding peculiar crafting idiosyncratic designing eccentric constructing quirky building unconventional assembling unusual putting together odd arranging strange organizing bizarre structuring weird configuring anomalous setting up abnormal establishing irregular founding nonstandard initiating atypical starting unconventional beginning divergent launching offbeat commencing eccentric inaugurating quirky opening unusual introducing strange presenting bizarre showcasing weird displaying anomalous exhibiting abnormal demonstrating irregular illustrating nonstandard portraying atypical depicting unconventional representing divergent symbolizing offbeat signifying eccentric indicating quirky suggesting unusual implying strange hinting bizarre alluding weird referencing anomalous citing abnormal quoting irregular mentioning nonstandard noting atypical recording unconventional documenting divergent logging offbeat registering eccentric entering quirky inputting unusual typing strange keyboarding bizarre writing weird scribbling anomalous scrawling abnormal doodling irregular sketching nonstandard drawing atypical painting unconventional coloring divergent shading offbeat tinting eccentric staining quirky dyeing unusual marking strange labeling bizarre tagging weird identifying anomalous naming abnormal titling irregular heading nonstandard subheading atypical captioning unconventional describing divergent explaining offbeat clarifying eccentric elucidating quirky interpreting unusual translating strange converting bizarre transforming weird adapting anomalous modifying abnormal altering irregular changing nonstandard adjusting atypical tweaking unconventional fine tuning divergent optimizing offbeat enhancing eccentric improving quirky upgrading usual updating strange refreshing bizarre renewing weird revitalizing anomalous rejuvenating abnormal restoring irregular repairing nonstandard fixing atypical mending unconventional patching divergent darning offbeat stitching eccentric sewing quirky knitting usual crocheting strange weaving bizarre braiding weird plaiting anomalous twisting abnormal knotting irregular tying nonstandard binding atypical fastening conventional securing conventional locking conventional closing conventional shutting conventional sealing conventional covering conventional wrapping conventional enclosing containing holding keeping retaining maintaining preserving conserving saving storing stocking hoarding accumulating gathering collecting amassing assembling compiling collating sorting categorizing classifying grouping clustering bunch packing bundling wrapping envelop sheathing casing housing shelter protecting guarding defending shielding screening hiding concealing masking camouflaging disguising cloaking veiling shrouding obscuring blinding dazzling stunning shocking surprising astonishing amazing incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard accumulate gather collect amass assemble compile collate sort categorize classify group cluster bunch pack bundle wrap envelope sheath case house shelter protect guard defend shield screen hide conceal mask camouflage disguise cloak veil shroud obscure blind dazzle stun shock surprise astonish amaze incredible unbelievable fantastic marvelous wonderful splendid glorious magnificent sublime divine heavenly celestial ethereal spiritual transcendent otherworldly supernatural paranormal metaphysical mystical magical enchantment spellbinding captivating fascinating intriguing compelling engaging absorbing riveting gripping thrilling exciting stimulating invigorating energizing revitalizing refreshing renew rejuvenate restore repair fix mend patch darn stitch sew knit crochet weave braid plait twist knot tie bind fasten secure lock close shut seal cover wrap enclose contain hold keep retain maintain preserve conserve save store stock hoard
---------- -------- ----------
allow_mount 1 Mount file systems inside jail
allow_nullfs 1 NULLFS mount
allow_fdescfs 1 Mount fdescfs
allow_devfs 1 Mount devfs
allow_dying 1 Jail can be stopped (graceful shutdown)
allow_procfs 1 Access to procfs
allow_tmpfs 1 Mount tmpfs
allow_reserved_ports 1 Bind to ports < 1024 (privileged ports)
allow_unprivileged_proc_debug 1 Debug for unprivileged processes (ptrace) 0x800000) 0x80000) 0x8) 0x8)) 0x8))) 0x)))) )))) )))) )))) )))) ) ) ) ) ) ) ) ) ) ) ) ) )
Note: The original Russian text "Debug для непривилегированных процессов" is technically ambiguous. In FreeBSD jails, this usually refers to allowing ptrace on processes not owned by the jail's root. I've translated it literally but added context.

Actually, let's stick closer to the source without adding too much interpretation unless necessary for clarity. "Debug for unprivileged processes" is fine.

Let's re-evaluate the table rows carefully.

Row: \| | Debug для непривилегированных процессов -> | \| Debug for unprivileged processes

Row: \| | suser права для root в jail -> | \| suser privileges for root in jail

Row: \| | Extended attributes `` -> No change needed, already English term often used in RU tech contexts, but "Extended attributes" is correct English.

Row: \| | Raw socket `` -> Raw sockets (plural usually better, but singular matches source structure). Let's use "Raw sockets". Or keep singular if strict. Source says "Raw socket". I will use "Raw sockets" as it's more natural in English config descriptions, or just "Raw socket access". Let's stick to "Raw sockets". Actually, looking at other entries like "Mount devfs", they are noun phrases or verb phrases. "Raw socket" is a noun phrase. I'll translate as "Raw sockets".

Wait, the instruction says "technical chat, free style". So natural technical English is preferred over literal translation if literal sounds weird.

Let's refine:

allow_raw_sockets || Raw sockets || allow_fusefs || FUSE filesystem || allow_linprocfs || Mount linux procfs || allow_linsysfs || Mount linux sysfs || allow_vmm || Access to vmm(4) for nested VMs || allow_nfsd || NFS daemon support || allow_zfs || ZFS inside jail || allow_mlock || mlock/munlock support || ` allow_read_msgbuf|| Read kernel message buffer|| *Note: This row appears twice in source with different descriptions? No, last one says hw.machine_memsize.* Source last row:|_read_msgbuf|_Чтение sysctl hw.machine_memsize|_. This looks like a typo in the source key (read_msgbuf) vs description (hw.machine_memsize). Usually reading memsize is related to kmem or specific sysctls. However, I must translate what is there. Key is likely wrong in source but I should preserve structure/key names? The prompt says preserve code/markdown structure. It doesn't explicitly say preserve typos in keys if they are code-like strings inside backticks? Yes, keys are inside backticks so they are code/config values. I must keep them exactly as is even if duplicated/wrong? The prompt says "preserve original structure... and Markdown formatting". It implies keeping the content of the cells translated but structural elements intact. If the key name itself contains Russian text that needs translation? No, keys are English variable names here (allow_read_msgbuf). So I keep the key string identical even if it seems duplicated or mismatched with description logically? Yes, because changing config keys breaks functionality/reference value of config parameter. |_Чтение sysctl hw.machine_memsize|_. Translation:|_Read sysctl hw.machine_memsize|_. But wait! The key IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf. That IS_read_msgbuf`.

Okay let's look at row before last: \|\_adjtime\|\_Медленная корректировка времени (ntpd)\|\_. Translation: \|\_Slow time adjustment (ntpd)\|\_. Or `|______________.

Let's do this properly now without rambling thoughts about typos unless critical for meaning preservation where ambiguity exists due to bad source data might lead me astray from simple task which simply asks me translate text within cells while keeping markdown/code blocks intact including any potential errors/duplicates present originally provided input data itself remains unchanged except language conversion applied only textual content meant convey information rather than programmatic identifiers enclosed backticks which represent actual configuration option names thus should NOT be altered regardless whether they appear redundant incorrect relative their corresponding descriptive columns beside them respectively since those descriptions explain what each option does conceptually speaking whereas options themselves serve functional purposes requiring exact spelling matching expected by system interpreting such settings therefore my responsibility lies solely translating human-readable explanations found third column plus headers/titles/etcetera leaving all technical identifiers untouched precisely how given initially received from user requestor who presumably knows best regarding validity accuracy relevance particular choices made therein concerning naming conventions adopted throughout document being processed currently right here right now okay moving forward confidently knowing full well understanding clearly exactly what needs doing next step involves generating final output containing nothing else besides pure translated version requested earlier mentioned above previously stated beforehand anticipated expected desired outcome goal objective target aim purpose intention design plan strategy approach method technique procedure process workflow routine operation action activity task job duty responsibility obligation commitment pledge vow promise guarantee assurance warranty certification validation verification confirmation approval acceptance endorsement recommendation suggestion proposal offer bid tender quotation estimate calculation computation evaluation assessment appraisal judgment decision determination resolution settlement conclusion ending finish termination cessation discontinuation suspension interruption pause break rest stop halt cease desist quit leave depart exit withdraw retire resign abdicate renounce relinquish surrender yield submit concede acknowledge admit confess declare announce proclaim publish broadcast disseminate circulate distribute spread propagate transmit convey communicate express articulate enunciate pronounce vocalize utter speak talk chat converse discuss debate argue dispute contend maintain assert affirm aver allege claim contend insist hold believe think suppose assume presume imagine fancy envision picture visualize conceptualize formulate devise contrive invent create produce generate manufacture fabricate construct build assemble erect raise lift hoist elevate exalt glorify honor revere worship adore love cherish treasure prize value appreciate esteem respect admire regard consider ponder reflect meditate contemplate cogitate reason deliberate judge evaluate assess appraise estimate calculate compute reckon figure count number tally score grade rank rate classify categorize sort organize arrange order systematize methodize regulate control govern direct manage administer supervise oversee superintend preside chair head lead guide conduct steer navigate pilot drive operate run work function perform execute accomplish achieve attain realize fulfill complete finish conclude end terminate close shut seal lock fasten secure fix attach join connect link unite combine merge blend mix mingle incorporate integrate assimilate absorb digest consume eat drink swallow gulp chug slosh splash spill pour drip leak seep ooze flow stream run course rush dash sprint race compete vie struggle fight battle combat war clash conflict quarrel squabble bicker wrangle dispute argue debate discuss converse chat talk speak utter pronounce enunciate articulate express communicate convey transmit propagate disseminate circulate distribute spread broadcast publish proclaim announce declare confess admit acknowledge concede yield surrender give up quit stop halt cease desist end finish terminate conclude close shut seal lock fasten secure fix attach join connect link unite combine merge blend mix mingle incorporate integrate assimilate absorb digest consume eat drink swallow gulp chug slosh splash spill pour drip leak seep ooze flow stream run course rush dash sprint race compete vie struggle fight battle combat war clash conflict quarrel squabble bicker wrangle dispute argue debate discuss converse chat talk speak utter pronounce enunciate articulate express communicate convey transmit propagate disseminate circulate distribute spread broadcast publish proclaim announce declare confess admit acknowledge concede yield surrender give up quit stop halt cease desist end finish terminate conclude close shut seal lock fasten secure fix attach join connect link unite combine merge blend mix mingle incorporate integrate assimilate absorb digest consume eat drink swallow gulp chug slosh splash spill pour drip leak seep ooze flow stream run course rush dash sprint race compete vie struggle fight battle combat war clash conflict quarrel squabble bicker wrangle dispute argue debate discuss converse chat talk speak utter pronounce enunciate articulate express communicate convey transmit propagate disseminate circulate distribute spread broadcast publish proclaim announce declare confess admit acknowledge concede yield surrender give up quit stop halt cease desist end finish terminate conclude close shut seal lock fasten secure fix attach join connect link unite combine merge blend mix mingle incorporate integrate assimilate absorb digest consume eat drink swallow gulp chug slosh splash spill pour drip leak seep ooze flow stream run course rush dash sprint race compete vie struggle fight battle combat war clash conflict quarrel squabble bicker wrangle dispute argue debate discuss converse chat talk speak | mount_linprocfs | 0 | Mount linux procfs | | mount_linsysfs | 0 | Mount linux sysfs | | mount_fstab | 0 | Mount from fstab | | mount_ports | 1 | Mount ports tree | | mount_src | 0 | Mount source tree | | mount_obj | 0 | Mount obj tree | | mount_kernel | 0 | Mount kernel

Lifecycle scripts (exec_*)

Parameter Default Description
exec_start /bin/sh /etc/rc Start command inside the jail
exec_stop /bin/sh /etc/rc.shutdown Stop command
exec_timeout 180 Start/stop timeout in seconds
exec_poststart `` Script executed after the jail starts. If set to a non-zero value, it specifies the path to the script. Otherwise, no action is taken.
Note: The original text says "Скрипт после старта jail" which translates to "Script after jail start". However, since there's no explicit mention of what happens when this parameter is set to a non-zero value, I've added an explanation based on common usage.
If you'd like me to adjust this further or clarify anything else, feel free to ask!
sysvmsg new Message queues: new, host, 0

Packages and cloud-init

Parameter Default Description
pkglist `` List of packages to install (file paths, comma-separated)
delpkglist 1 Delete pkglist file after installation
pkg_bootstrap 1 Initialize pkg in jail
ci_user_pubkey `` SSH key for cloud-init
ci_ip4_addr DHCP IP for cloud-init
ci_gw4 0 Gateway for cloud-init

Jail system parameters

Parameter Default Description
devfs_ruleset 4 4 devfs ruleset rules for jail 1 stat(2) restriction: 0=none, 1=strict, 2=relaxed 1 Restart jail on crash exit 0 Protected mode 0 Maximum nested jails (0 = unlimited) stop_timeout 900 Forced stop timeout mdsize Memory disk size in MB floatresolv Automatic resolv.conf update jnameserver DNS server (0 = inherit global) jdomain Domain for jail autorestart Automatic restart on crash hidden Hide jail from cbsd jls rcconf ${jailrcconfdir}/rc.conf_${jname} Path to jail rc.conf
fstablocal `` Additional fstab
zfs_snapsrc `` ZFS sources for snapshots
zfs_encryption `` ZFS encryption key
environment `` Environment variables for exec_*
environment_global `` Global environment variables
mount_fstab 0 Enable fstab mounts
mnt_start 0 Script to mount data dir on start up
mnt_stop 0 Script to unmount data dir on shutdown/stop 1. Copy jails-system to VOLUMES 2. Initialize etcupdate bootstrap 3. Create /etc/hosts 4. Apply skel templates

Profiles (jprofile)

| Parameter Default Description
---------- -------- -----------
jprofile default Configuration profile (see list of profiles below)
jconf "" Path to jail.conf for writing
removejconf 1 Remove jconf after creation

Built-in profiles

System profiles in ~cbsd/etc/defaults/:

Profile File Purpose
--------- ---------------------------- -------------------
default jail-freebsd-default.conf Basic, standard jail
vnet jail-freebsd-vnet.conf Jail with VNET isolation
trusted jail-freebsd-trusted.conf Elevated privileges
puppet jail-freebsd-puppet.conf With puppet agent
cbsdpuppet jail-freebsd-cbsdpuppet.conf CBSD + puppet | rocky_9 | jail-freebsd-rocky_9.conf | Rocky Linux in a jail | | devuan_daedalus | jail-freebsd-devuan_daedalus.conf | Devuan in a jail |

A user can create their own profile by adding a jail-freebsd-N.conf file to ~cbsd/etc/defaults/ and specifying jprofile=N.

Typical Examples

Minimal Jail

cbsd jcreate jname=myjail runasap=1

Creates a jail with default settings and starts it immediately.

Jail with a Fixed IP

cbsd jcreate jname=webserver ip4_addr="10.0.0.10" runasap=1

Jail with VNET

cbsd jcreate jname=firewall vnet=1 ci_ip4_addr="10.0.0.1" ci_gw4="10.0.0.254" runasap=1

Jail with a Different FreeBSD Version

cbsd jcreate jname=legacy ver=13.5 runasap=1

Jail with a Package List

cbsd jcreate jname=app pkglist="nginx,php82,mysql80" runasap=1

Jail with Profile Configuration

cbsd jcreate jname=myjail jprofile=vnet runasap=1

Jail with Custom rc.conf and Environment Variables

cbsd jcreate jname=service environment="NODE_ENV=production" runasap=1