Skip to content

Conversation

@Liwx1014
Copy link
Contributor

@Liwx1014 Liwx1014 commented Oct 29, 2025

Added instructions for resolving 'invalid tar header' error on Kylin OS (麒麟操作系统) with an ARM64 architecture on Atlas300I hardware during docker pull, including steps for offline loading of docker images.


What this PR does / why we need it?

The primary motivation for this PR is to address a critical docker pull failure that occurs on specific, yet important, enterprise environments. Specifically, when operating on Kylin OS (麒麟操作系统) with an ARM64 architecture on Atlas300I hardware, users frequently encounter an archive/tar: invalid tar header error, which completely blocks the setup process. This issue has been consistently reproduced, with multiple retries failing with the same error, confirming that it is a persistent environmental problem rather than a transient network issue.

image

This guide provides a robust, step-by-step workaround using an offline-loading method (docker save on a host machine and docker load on the target machine). This solution is crucial for enabling users on this platform to use vLLM.

This contribution does not directly fix an existing issue number, but it proactively solves a significant environmental and usability problem for a growing user base.

Does this PR introduce any user-facing change?

No.It does not alter any code, APIs, interfaces, or existing behavior of the vLLM project.

How was this patch tested?

The instructions and troubleshooting steps in this guide were validated through a real-world, end-to-end test case on the my hardware and OS.

The testing process was as follows:

  1. Problem Reproduction: An attempt was made to directly docker pull the vllm-ascend:v0.10.0rc1-310p image on a target machine running Kylin OS (ARM64). The invalid tar header failure was successfully and consistently reproduced, confirming the existence of the problem.
  2. Solution Implementation: The workaround detailed in the guide was executed:
    • On a separate host machine (Ubuntu x86_64), the image was successfully pulled using the --platform linux/arm64 flag.
    • The image was then saved to a .tar archive using docker save.
    • The .tar archive was transferred to the target Kylin OS machine.
    • The image was successfully loaded from the archive using docker load -i ....
  3. End-to-End Validation: After loading the image, the vLLM container was launched on the target machine following the instructions in the guide. Both online inference (via curl to the API server) and offline inference (via the Python script) were executed successfully, confirming that the entire workflow described in the document is accurate and effective.

Since this is a documentation-only change based on a validated workflow, no new unit or integration tests were added to the codebase.

Added instructions for resolving 'invalid tar header' error on Kylin OS during docker pull, including steps for offline loading of docker images.

Signed-off-by: Liwx <[email protected]>
@github-actions
Copy link

👋 Hi! Thank you for contributing to the vLLM Ascend project. The following points will speed up your PR merge:‌‌

  • A PR should do only one thing, smaller PRs enable faster reviews.
  • Every PR should include unit tests and end-to-end tests ‌to ensure it works and is not broken by other future PRs.
  • Write the commit message by fulfilling the PR description to help reviewer and future developers understand.

If CI fails, you can run linting and testing checks locally according Contributing and Testing.

@github-actions github-actions bot added the documentation Improvements or additions to documentation label Oct 29, 2025
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a valuable FAQ entry for resolving a docker pull error on Kylin OS. The instructions are clear and provide a solid workaround. My review focuses on improving the maintainability and clarity of the provided shell commands by removing hardcoded values and making the instructions more robust for future versions. I've suggested using a variable for the Docker image tag and updating the subsequent steps to reflect this change, which will prevent the documentation from becoming outdated.

@wangxiyuan
Copy link
Collaborator

Can you fix the lint error? Otherwise LGTM

Liwx1014 and others added 3 commits October 30, 2025 10:19
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Liwx <[email protected]>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Liwx <[email protected]>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Liwx <[email protected]>
@Liwx1014
Copy link
Contributor Author

Can you fix the lint error? Otherwise LGTM

Thanks for the review! I've pushed the fix for the lint error. It was indeed caused by an extra trailing space. The CI should pass now.

@wangxiyuan wangxiyuan merged commit eed1957 into vllm-project:main Oct 30, 2025
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants