Skip to content

Commit

Permalink
enhance docs; debug dockerfile
Browse files Browse the repository at this point in the history
  • Loading branch information
CodyCBakerPhD committed Jul 1, 2024
1 parent 6c36bde commit e4ced1e
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 4 deletions.
2 changes: 1 addition & 1 deletion dockerfiles/rclone_with_config
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM rclone/rclone:latest
LABEL org.opencontainers.image.source=https://github.com/catalystneuro/neuroconv
LABEL org.opencontainers.image.description="A simple extension of the basic Rclone docker image to automatically create a local .conf file from contents passed via an environment variable."
CMD printf "$RCLONE_CONFIG" > ./rclone.conf && echo "$RCLONE_COMMANDS" && eval "$RCLONE_COMMANNDS"
CMD printf "$RCLONE_CONFIG" > ./rclone.conf && echo "$RCLONE_COMMAND" && eval "$RCLONE_COMMANND"
ENTRYPOINT [""]
5 changes: 4 additions & 1 deletion docs/developer_guide/docker_images.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ After building the image itself, we can publish the container with...

Though it may appear confusing, the use of the ``IMAGE_NAME`` in these steps determines only the _name_ of the package as available from the 'packages' screen of the host repository; the ``LABEL`` itself ensured the upload and linkage to the NeuroConv GHCR.

All our docker images can be built in GitHub Actions (for Ubuntu) and pushed automatically to the GHCR by manually triggering their respective workflow. Keep in mind that most of them are on semi-regular CRON schedules, though.



Run Docker container on local YAML conversion specification file
Expand All @@ -73,12 +75,13 @@ and can then run the entrypoint (equivalent to the usual command line usage) on
Run Docker container on YAML conversion specification environment variable
--------------------------------------------------------------------------

An alternative approach that simplifies usage on systems such as AWS Batch is to specify the YAML contents as an environment variable. The YAML file is constructed in the first step of the container launch.

The only potential downside with this usage is the maximum size of an environment variable (~13,000 characters). Typical YAML specification files should not come remotely close to this limit.
The only potential downside with this usage is the maximum size of an environment variable (~13,000 characters). Typical YAML specification files should not come remotely close to this limit. This is contrasted to the limits on the CMD line of any docker container, which is either 8192 characters for Windows or either 64 or 128 KiB depending on UNIX build.

Otherwise, in any cloud deployment, the YAML file transfer will have to be managed separately, likely as a part of the data transfer or an entirely separate step.

Expand Down
12 changes: 10 additions & 2 deletions docs/user_guide/docker_demo.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Docker Demo
-----------
NeuroConv Docker Demo
---------------------

The following is an explicit demonstration of how to use the Docker-based NeuroConv YAML specification via the command line.

Expand Down Expand Up @@ -116,3 +116,11 @@ Voilà! If everything occurred successfully, you should see...
Metadata is valid!
conversion_options is valid!
NWB file saved at /demo_neuroconv_docker/demo_output/phy_from_docker_yaml.nwb!
RClone With Config Docker Demo
------------------------------

# TODO

0 comments on commit e4ced1e

Please sign in to comment.