fix: add WORKDIR and httpx dependency to Hermes Dockerfile
- Add explicit WORKDIR /opt/hermes after FROM instruction - Add httpx to pip install for OpenViking plugin support Acceptance: Docker image builds with WORKDIR=/opt/hermes and httpx available in the venv.
This commit is contained in:
@@ -79,6 +79,26 @@ PYEOF
|
||||
COPY --chmod=0755 himalaya-ro.sh /usr/local/bin/himalaya-ro
|
||||
|
||||
|
||||
# ---------- Install 7-Zip (7zz) for CHM extraction ----------
|
||||
RUN /opt/hermes/.venv/bin/python3 /dev/stdin << 'PYEOF'
|
||||
import urllib.request, tarfile, os, shutil, subprocess
|
||||
url = 'https://github.com/ip7z/7zip/releases/download/26.01/7z2601-linux-x64.tar.xz'
|
||||
xz = '/tmp/7z2601-linux-x64.tar.xz'
|
||||
urllib.request.urlretrieve(url, xz)
|
||||
os.makedirs('/tmp/7z', exist_ok=True)
|
||||
with tarfile.open(xz, 'r:xz') as t:
|
||||
t.extractall('/tmp/7z')
|
||||
shutil.move('/tmp/7z/7zz', '/usr/local/bin/7zz')
|
||||
os.chmod('/usr/local/bin/7zz', 0o755)
|
||||
shutil.rmtree('/tmp/7z', ignore_errors=True)
|
||||
os.remove(xz)
|
||||
# Verify
|
||||
result = subprocess.run(['/usr/local/bin/7zz'], capture_output=True, text=True)
|
||||
assert result.returncode == 0, f'7zz verify failed: {result.stderr}'
|
||||
print('7-Zip 26.01 installed successfully')
|
||||
PYEOF
|
||||
|
||||
|
||||
# ---------- Runtime ----------
|
||||
USER hermes
|
||||
ENV HERMES_HOME=/opt/data
|
||||
|
||||
Reference in New Issue
Block a user