59 lines
1.9 KiB
Docker
59 lines
1.9 KiB
Docker
# Start from the code-server Debian base image
|
|
ARG NGROK
|
|
FROM codercom/code-server:latest
|
|
ARG NGROK
|
|
|
|
USER coder
|
|
|
|
# Apply VS Code settings
|
|
COPY deploy-container/settings.json .local/share/code-server/User/settings.json
|
|
|
|
# Use bash shell
|
|
ENV SHELL=/bin/bash
|
|
|
|
# Install unzip + rclone (support for remote filesystem)
|
|
RUN sudo apt-get update && sudo apt-get install unzip -y
|
|
RUN curl https://rclone.org/install.sh | sudo bash
|
|
|
|
# Copy rclone tasks to /tmp, to potentially be used
|
|
COPY deploy-container/rclone-tasks.json /tmp/rclone-tasks.json
|
|
|
|
# Fix permissions for code-server
|
|
RUN sudo chown -R coder:coder /home/coder/.local
|
|
|
|
# You can add custom software and dependencies for your environment below
|
|
# -----------
|
|
|
|
# Install a VS Code extension:
|
|
# Note: we use a different marketplace than VS Code. See https://github.com/cdr/code-server/blob/main/docs/FAQ.md#differences-compared-to-vs-code
|
|
# RUN code-server --install-extension esbenp.prettier-vscode
|
|
|
|
# Install apt packages:
|
|
# RUN sudo apt-get install -y ubuntu-make
|
|
|
|
# Copy files:
|
|
# COPY deploy-container/myTool /home/coder/myTool
|
|
|
|
# -----------
|
|
|
|
# Port
|
|
ENV PORT=8080
|
|
|
|
|
|
## END
|
|
|
|
USER coder
|
|
|
|
RUN sudo curl -sSL https://dot.net/v1/dotnet-install.sh | sudo bash /dev/stdin -Channel 6.0 -InstallDir /usr/share/dotnet \
|
|
&& sudo ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet
|
|
RUN git config --global user.email "tommy@terribledev.io"
|
|
RUN git config --global user.name "Tommy Parnell"
|
|
RUN sudo apt-get install libicu-dev -y && sudo apt-get install build-essential -y
|
|
|
|
RUN curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && \
|
|
echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | sudo tee /etc/apt/sources.list.d/ngrok.list && \
|
|
sudo apt update && sudo apt install ngrok
|
|
# Use our custom entrypoint script first
|
|
COPY deploy-container/entrypoint.sh /usr/bin/deploy-container-entrypoint.sh
|
|
ENTRYPOINT ["/usr/bin/deploy-container-entrypoint.sh"]
|