fix: prevent duplicate data volumes in entrypoint.sh #681
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type of Change
Related Issues
Summary of Changes
fix: prevent duplicate data volumes in entrypoint.sh
Checklist
make pre-commitImpact
Additional Notes
Using rustfs for the first time, its documentation contains the following instructions:
Identify the problem
However, when I run it, the following error occurs, and the docker container cannot be started.
Using only the simplest configuration from the documentation, set the mount path in the rustfs binary startup parameters to
/dataThe console reports an error. From the log
Starting: /data, we can conclude that the rustfs binary path/usr/bin/rustfsis missing; the correct one should beStarting: /usr/bin/rustfs /dataand then, using the following command with full parameters:
The error message is as follows. It can be seen from the log
Starting: /usr/bin/rustfs --address :9000 --console-enable --server-domains example.com --access-key rustfsadmin --secret-key rustfsadmin /datathat the startup parameters are correct, but a new error occurs:Error: Custom { kind: Other, error: Custom { kind: Other, error: "Input args /data has duplicate ellipses" } }I initially suspect that there is an error in the
entrypoint.shIt does not handle path parameters starting with
/. The script only processes: no parameters, options starting with-, or the explicit stringrustfs. Therefore,/datais directly treated as an executable file, causing an error.When using full parameters: the parameters include
/data, and the script correctly adds the/usr/bin/rustfsprefix. However,set -- "$@" $DATA_VOLUMESappendsDATA_VOLUMESto the end of the parameters, making the command:/usr/bin/rustfs /data /data,rustfsdetects duplicate data paths and reports the errorduplicate ellipsesFix the problem
After testing, it runs normally.
Simple configuration
Full configuration
Multi-path configuration
Thank you for your contribution! Please ensure your PR follows the community standards (CODE_OF_CONDUCT.md) and sign the CLA if this is your first contribution.