forked from nano-o/python-fbas
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile.dev
More file actions
68 lines (52 loc) · 1.87 KB
/
Copy pathDockerfile.dev
File metadata and controls
68 lines (52 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
FROM debian:stable
RUN apt-get update && apt-get install -y \
build-essential \
cmake \
g++ libzmq3-dev zlib1g-dev \
curl git \
python3-pip \
python3-venv \
ncurses-term \
locales \
tmux \
&& rm -rf /var/lib/apt/lists/*
RUN echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \
locale-gen
ENV LANG=en_US.UTF-8
ENV LANGUAGE=en_US:en
ENV LC_ALL=en_US.UTF-8
ENV TERM=xterm-256color
ENV COLORTERM=truecolor
RUN git clone --depth 1 https://github.com/pysathq/pysat /tmp/pysat && \
mkdir -p /opt/pysat-docs && \
cp -a /tmp/pysat/docs /opt/pysat-docs/docs && \
cp -a /tmp/pysat/README.rst /opt/pysat-docs/README.rst && \
rm -rf /tmp/pysat && \
chmod -R a+rX /opt/pysat-docs
RUN curl -fsSL https://deb.nodesource.com/setup_23.x -o nodesource_setup.sh
RUN bash nodesource_setup.sh
RUN apt-get update && apt-get install -y nodejs
ARG USERNAME=developer
ARG USER_UID=1000
ARG USER_GID=1000
RUN groupadd --gid ${USER_GID} ${USERNAME} && \
useradd -m -s /bin/bash --uid ${USER_UID} --gid ${USER_GID} ${USERNAME}
USER ${USERNAME}
ENV USERNAME=${USERNAME}
RUN mkdir /home/developer/.npm-global
RUN npm config set prefix '/home/developer/.npm-global'
ENV PATH="/home/developer/.npm-global/bin:$PATH"
RUN npm install -g @anthropic-ai/claude-code
RUN npm install -g @openai/codex
ENV VENV_DIR=/home/${USERNAME}/.venv
RUN python3 -m venv ${VENV_DIR}
ENV PATH="${VENV_DIR}/bin:/home/${USERNAME}/.local/bin:$PATH"
WORKDIR /home/${USERNAME}
COPY .tmux.conf /home/${USERNAME}/.tmux.conf
COPY --chmod=755 scripts/container-entrypoint.sh /usr/local/bin/container-entrypoint
WORKDIR /workspaces/python-fbas
# make sure that TRAMP picks up the right PATH (it uses "sh -l"):
RUN echo "export PATH=\"$PATH\"" >> ~/.profile && \
echo "[ -f ~/.profile ] && . ~/.profile" >> ~/.bash_profile
ENTRYPOINT ["/usr/local/bin/container-entrypoint"]
CMD ["sleep", "infinity"]