Skip to main content

Vkube Command Tool For User

Install && Use

pip install vkube
vkube config -w GHCRToken/DockerhubToken=xxx
vkube deploy -f xxx/VKubefile.yaml

Run CLI Locally

Install virtualenv to run the CLI tool locally:

pip3 install virtualenv

Create virtual environment:

cd vkube-cli && virtualenv venv

Activate virtual environment:

source venv/bin/activate

Install CLI:

pip install -e .
vkube deploy -f xxx.yaml
vkube config -w GHCRToken=xxx

Deactivate virtual environment:

deactivate

Install CLI Globally from Source Code

Navigate to the repository root:

cd /path_to_project #directory containing setup.py
pip3 install -e . # may need to manually create ~/.vkube/config.yaml

or

pip3 install . # auto generates ~/.vkube/config.yaml

Install CLI with isolated dependencies:

pip3 install --user pipx
export PATH="$HOME/.local/bin:$PATH"
pipx install ~/path_to_project
pipx install --editable ~/path_to_project

Using vkube-cli

After installing locally, from the root path ("xxx/vkube-cli"):

  1. Add DockerhubToken or GHCRToken:
vkube config -w DockerhubToken=dckr_pat_xxxx
vkube config -w GHCRToken=ghcr_xxx

2.Configure VKubefile.yaml

3.Deploy using:

vkube deploy -f ./VKubefile.yaml #can deploy from any directory by specifying VKubefile.yaml path

Export Dependencies

pip freeze > requirements.txt

Notes

When configuring VKubefile.yaml, the build image context is "." (current directory where command is executed):

vkube deploy -f .VKubefile.yaml

For example, if running from vkube_cli directory, the build context is vkube_cli. Using COPY app.py /app in Dockerfile will fail if app.py doesn't exist in vkube_cli.

Known Issues

1. Docker Not Running

If Docker isn't running, you'll see:

Error: Unable to connect to Docker. Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

2. Image Push Failures

Network issues may prevent image pushing:

Pushing image encountering error: [{'status': 'The push refers to repository [docker.io/yourusername/myapp]'}, {'errorDetail': {'message': 'Get "https://registry-1.docker.io/v2/": net/http: TLS handshake timeout'}, 'error': 'Get "https://registry-1.docker.io/v2/": net/http: TLS handshake timeout'}]

Release CLI to PyPI

Build Package

Ensure setuptools, wheel and twine are installed:

pip install setuptools wheel twine

Build package from project root:

python setup.py sdist bdist_wheel

This creates a dist/ directory containing .tar.gz and .whl files for PyPI upload.

Generate Version Number from Git Tags

Install:

pip install setuptools_scm

Use specific tag to release:

git fetch --tags
git checkout v1.0.0  # switch to v1.0.0 tag

Upload to PyPI

twine upload dist/* -u __token__ -p <your-pypi-api-token>

Release files for vkube 2.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vkube 2.0.1
File Size Uploaded
vkube-2.0.1.tar.gz 36.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vkube 2.0.1
File Interpreter ABI Platform
vkube-2.0.1-py3-none-any.whl Python 3 none any Details

Total release size:75.1 kB

Release files / vkube-2.0.1.tar.gz

Download URL vkube-2.0.1.tar.gz
Size 36.8 kB
Tags Source
SHA-256 checksum
How to use checksums
33a1aa65c4369f4457469ae4703796cc9ba7395cae8bf9a287bf993c38e7807f
BLAKE2b-256 checksum
How to use checksums
0710c9bf629ddaa34e2d52bab8baee876325f5f5d425829706c3699e7f21a5cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release files / vkube-2.0.1-py3-none-any.whl

Download URL vkube-2.0.1-py3-none-any.whl
Size 38.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6df955b625a31ab89313c5d71c8a04590f5ba089c6ad82c8b143b5aef51383fa
BLAKE2b-256 checksum
How to use checksums
537da408ba8a24a0a10dada55925c13f334bbd7e547ae6d89743ffecd4fed7a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 release files

2.0.0

2 release files

1.0.4

1 release file

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page