= Arion options == docker-compose.extended Attribute set that will be turned into the x-arion section of the docker-compose.yaml file. [discrete] === details Type:: attribute set No Default:: {blank} No Example:: {blank} == docker-compose.raw Attribute set that will be turned into the docker-compose.yaml file, using Nix's toJSON builtin. [discrete] === details Type:: attribute set No Default:: {blank} No Example:: {blank} == host.nixStorePrefix Prefixes store paths on the host, allowing the Nix store to be stored at an alternate location without altering the format of store paths. For example: instead of mounting the host's /nix/store as the container's /nix/store, this will mount /mnt/foo/nix/store as the container's /nix/store. [discrete] === details Type:: string Default:: + ---- "" ---- Example:: + ---- "/mnt/foo" ---- == host.uid The numeric user id (UID) of the user running arion. This lets you to write modules that interact with the host user's files, which is helpful for local development, but not intended for production-like deployment scenarios. [discrete] === details Type:: signed integer No Default:: {blank} No Example:: {blank} == out.dockerComposeYaml A derivation that produces a docker-compose.yaml file for this composition. [discrete] === details Type:: package No Default:: {blank} Read Only:: {blank} No Example:: {blank} == out.dockerComposeYamlAttrs The text of out.dockerComposeYaml. [discrete] === details Type:: attribute set of unspecifieds No Default:: {blank} Read Only:: {blank} No Example:: {blank} == out.dockerComposeYamlText The text of out.dockerComposeYaml. [discrete] === details Type:: string No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services An attribute set of service configurations. A service specifies how to run an image as a container. [discrete] === details Type:: attribute set of submodules No Default:: {blank} No Example:: {blank} == services..composition The composition configuration. [discrete] === details Type:: attribute set No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services..host The composition-level host option values. [discrete] === details Type:: attribute set No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services..image.command [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..image.contents Top level paths in the container. [discrete] === details Type:: list of packages Default:: + ---- [] ---- No Example:: {blank} == services..image.name A human readable name for the docker image. Shows up in the docker ps output in the IMAGE column, among other places. [discrete] === details Type:: string Default:: + ---- {"_type":"literalExample","text":"config.service.name"} ---- No Example:: {blank} == services..image.nixBuild Whether to build this image with Nixpkgs' dockerTools.buildLayeredImage and then load it with docker load. By default, an image will be built with Nix unless is set. See also , which defaults to the service name. [discrete] === details Type:: boolean No Default:: {blank} No Example:: {blank} == services..image.rawConfig This is a low-level fallback for when a container option has not been modeled in the Arion module system. This attribute set does not have an appropriate merge function. Please use the specific image options instead. Run-time configuration of the container. A full list of the options are available at in the Docker Image Specification v1.2.0. [discrete] === details Type:: attribute set of unspecifieds Default:: + ---- {} ---- No Example:: {blank} == services..nixos.build NixOS build products from config.system.build, such as toplevel and etc. This option is unused by default, because not all images use NixOS. One way to use this is to enable nixos.useSystemd, but the NixOS configuration can be used in other ways. [discrete] === details Type:: attribute set No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services..nixos.configuration Modules to add to the NixOS configuration. This option is unused by default, because not all images use NixOS. One way to use this is to enable nixos.useSystemd, but the NixOS configuration can be used in other ways. [discrete] === details Type:: list of unspecifieds or unspecified convertible to it Default:: + ---- {} ---- No Example:: {blank} == services..nixos.evaluatedConfig Evaluated NixOS configuration, to be read by service-level modules. This option is unused by default, because not all images use NixOS. One way to use this is to enable nixos.useSystemd, but the NixOS configuration can be used in other ways. [discrete] === details Type:: attribute set No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services..nixos.useSystemd When enabled, call the NixOS systemd-based init system. Configure NixOS with nixos.configuration. [discrete] === details Type:: boolean Default:: + ---- false ---- No Example:: {blank} == services..out.extendedInfo Information about a service to include in the Docker Compose file, but that will not be used by the docker-compose command itself. It will be inserted in x-arion.serviceInfo.<service.name>. [discrete] === details Type:: attribute set of unspecifieds Default:: + ---- {} ---- No Example:: {blank} == services..out.service Raw input for the service in docker-compose.yaml. You should not need to use this option. If anything is missing, please contribute the missing option. This option is user accessible because it may serve as an escape hatch for some. [discrete] === details Type:: attribute set of unspecifieds No Default:: {blank} No Example:: {blank} == services..service.build.context Locates a Dockerfile to use for creating an image to use in this service. See Docker Compose#context [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.capabilities Enable/disable linux capabilities, or pick Docker's default. Setting a capability to true means that it will be "added". Setting it to false means that it will be "dropped". See Docker Compose#cap_add-cap_drop Omitted and null capabilities will therefore be set according to Docker's default list of capabilities. [discrete] === details Type:: attribute set of null or booleans Default:: + ---- {} ---- Example:: + ---- {"ALL":true,"NET_ADMIN":false,"SYS_ADMIN":false} ---- == services..service.command See Docker Compose#command [discrete] === details Type:: null or unspecified Default:: + ---- null ---- No Example:: {blank} == services..service.container_name See Docker Compose#container_name [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.defaultExec Container program and arguments to invoke when calling arion exec <service.name> without further arguments. [discrete] === details Type:: list of strings Default:: + ---- ["/bin/sh"] ---- No Example:: {blank} == services..service.depends_on See Docker Compose#depends_on [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.devices See docker run --device documentation See Docker Compose#devices [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.entrypoint See Docker Compose#entrypoint [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.env_file See Docker Compose#env_file [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.environment See Docker Compose#environment [discrete] === details Type:: attribute set of string or signed integers Default:: + ---- {} ---- No Example:: {blank} == services..service.expose See Docker Compose#expose [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.external_links See Docker Compose#external_links [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.extra_hosts See Docker Compose#extra_hosts [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.hostStoreAsReadOnly Adds a ':ro' (read-only) access mode to the host nix store bind mount. [discrete] === details Type:: boolean Default:: + ---- true ---- No Example:: {blank} == services..service.hostname Analogous to the docker run counterpart. See Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.image See Docker Compose#image [discrete] === details Type:: string No Default:: {blank} No Example:: {blank} == services..service.links See Docker Compose#links [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.name The name of the service - <name> in the composition-level services.<name> [discrete] === details Type:: string No Default:: {blank} Read Only:: {blank} No Example:: {blank} == services..service.network_mode See Docker Compose#network_mode [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.networks See Docker Compose#networks [discrete] === details Type:: null or list of strings Default:: + ---- null ---- No Example:: {blank} == services..service.ports Expose ports on host. "host:container" or structured. See Docker Compose#ports [discrete] === details Type:: list of unspecifieds Default:: + ---- [] ---- No Example:: {blank} == services..service.privileged Analogous to the docker run counterpart. See Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir [discrete] === details Type:: null or boolean Default:: + ---- null ---- No Example:: {blank} == services..service.restart See Docker Compose#restart [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.stop_signal See Docker Compose#stop_signal [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.sysctls See Docker Compose#sysctls [discrete] === details Type:: attribute set of string or signed integers Default:: + ---- {} ---- No Example:: {blank} == services..service.tmpfs See Docker Compose#tmpfs [discrete] === details Type:: list of strings Default:: + ---- [] ---- No Example:: {blank} == services..service.tty Analogous to the docker run counterpart. See Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir [discrete] === details Type:: null or boolean Default:: + ---- null ---- No Example:: {blank} == services..service.useHostNixDaemon Make the host Nix daemon available. [discrete] === details Type:: boolean Default:: + ---- false ---- No Example:: {blank} == services..service.useHostStore Bind mounts the host store if enabled, avoiding copying. [discrete] === details Type:: boolean Default:: + ---- false ---- No Example:: {blank} == services..service.user Analogous to the docker run counterpart. See Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank} == services..service.volumes See Docker Compose#volumes [discrete] === details Type:: list of unspecifieds Default:: + ---- [] ---- No Example:: {blank} == services..service.working_dir Analogous to the docker run counterpart. See Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir [discrete] === details Type:: null or string Default:: + ---- null ---- No Example:: {blank}