32 lines
1.1 KiB
Docker
32 lines
1.1 KiB
Docker
# Build zero-claw (minimal Rust agent runtime); only binary copied into main image
|
|
FROM rust:1-bookworm AS zeroclaw-builder
|
|
RUN cargo install zero-claw
|
|
|
|
# Kasm workspace with OpenClaw pre-installed
|
|
# Gateway runs on port 18789; expose in Kasm Workspace config
|
|
FROM kasmweb/debian-bookworm-desktop:1.18.0-rolling-daily
|
|
|
|
USER root
|
|
ENV HOME=/home/kasm-default-profile \
|
|
STARTUPDIR=/dockerstartup \
|
|
INST_SCRIPTS=/dockerstartup/install \
|
|
KASM_SVC_NO_SSL=1 \
|
|
ZEROCLAW_CONFIG=/home/kasm-user/0claw.toml
|
|
WORKDIR $HOME
|
|
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
|
|
|
COPY scripts/image-build*.sh /opt/clawtainer-build/
|
|
COPY 0claw.toml OPENCLAW-SETUP.md /tmp/clawtainer-assets/
|
|
COPY --from=zeroclaw-builder /usr/local/cargo/bin/0claw /usr/local/bin/0claw
|
|
|
|
RUN chmod +x /opt/clawtainer-build/image-build*.sh \
|
|
&& /opt/clawtainer-build/image-build.sh \
|
|
&& rm -rf /opt/clawtainer-build /tmp/clawtainer-assets
|
|
|
|
RUN chown 1000:0 $HOME
|
|
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
|
ENV HOME=/home/kasm-user
|
|
WORKDIR $HOME
|
|
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
|
|
USER 1000
|