Docker throwing error in latest version of Qiime

Hi @lizgehret,

Thanks for getting back to me so fast! I ran the commands and got the standard Qiime2 output. The issue before actually occurred when trying to run a command on data. Happily, the test command I used produced the output normally.

docker run -t -i -v $(pwd):/data quay.io/qiime2/core:2022.2 \
  qiime demux emp-single \
  --i-seqs emp-single-end-sequences.qza \
  --m-barcodes-file sample-metadata.tsv \
  --m-barcodes-column barcode-sequence \
  --o-per-sample-sequences demux.qza \
  --o-error-correction-details demux-details.qza

which produced the nice green message:

Saved SampleData[SequencesWithQuality] to: demux.qza
Saved ErrorCorrectionDetails to: demux-details.qza

The main difference I can see between the command you supplied and what I got from the earlier tutorial moving-pictures in Docker was the use of the -u user argument. Clearly I did not understand that part of it, and it seems it can be left out. When I added the -u part of the command I got the error again:

docker run -t -i -u $(id -u):$(id -g) \
  -v $(pwd):/data quay.io/qiime2/core:2022.2 \
  qiime demux emp-single \
  --i-seqs emp-single-end-sequences.qza \
  --m-barcodes-file sample-metadata.tsv \
  --m-barcodes-column barcode-sequence \
  --o-per-sample-sequences demux.qza \
  --o-error-correction-details demux-details.qza

Output:

There was a problem loading emp-single-end-sequences.qza as a QIIME 2 Result:

  cannot cache function 'rdist': no locator available for file '/opt/conda/envs/qiime2-2022.2/lib/python3.8/site-packages/umap/layouts.py'

However, when running a simple help command as the example you gave, the output is fine:

docker run -t -i -u $(id -u):$(id -g) \
  -v $(pwd):/data quay.io/qiime2/core:2022.2 \
  qiime
Usage: qiime [OPTIONS] COMMAND [ARGS]...

  QIIME 2 command-line interface (q2cli)
  --------------------------------------

  To get help with QIIME 2, visit https://qiime2.org.

etc......

I am happy to just leave the -u part out of my Qiime Docker commands, but do you have any idea why the user command is throwing that error? Or, do we ever need to use that argument?

Thanks!