Files
autogen/samples/dockers/Dockerfile.dev
R3d91ll 135bca41de Docker Documentation (#1251)
* Updates to the Dockerfiles making them more secure. update to the installation.md file and a start.sh file for the Dockerfile.dev to start the document server. Not ready for pull request.

* updates to the docker documentation

* clean up before commit

* added docker instructions on how to test  documentation prior to commit.

* fixed the title heading in the installation.md

* removed alternate yarn install from Dockerfile.dev

* Update sidebars.js

removed un-related change from website/sidebars.js

* cleaned up the lint errors from the pre-commit-check.

* removed bad edit from sidebars.js

* fixing git conflict with sidebars.js file

* Update Installation.md

added the missing sections back. However, do we still want the docker section under the Optional Dependencies? That looks like it would go better in the Dockerfiles.md file.

* Update Installation.md

Added mount your code back and added mount your directory for better clarity.

* Update Installation.md

Lint cleanup

* Update Installation.md

removed the relative path to samples/dockers/Dockerfiles.md with a proper URL to where it will exist

* fixed bad link to Dockerfiles.md

* Fix trailing whitespace and formatting issues

* Update link to Dockerfiles.md

* somtimes its really hard to find that lost i.

* trailing whitespace and EOF issues resolved

* fixed broken link

* trailing space an broken link

* removed broken links. will update one merged.

* fixed glaring error about building an image from a particular branch Contribute.md

* removed tic mark typo from contribute.md

---------

Co-authored-by: Todd W Bucy <todd.bucy@rackspace>
2024-01-15 17:15:59 +00:00

43 lines
1.2 KiB
Docker

# Basic setup
FROM python:3.11-slim-bookworm
# Update and install necessary packages
RUN apt-get update && apt-get -y update
# added vim and nano for convenience
RUN apt-get install -y sudo git npm vim nano curl
# Setup a non-root user 'autogen' with sudo access
RUN adduser --disabled-password --gecos '' autogen
RUN adduser autogen sudo
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER autogen
WORKDIR /home/autogen
# Set environment variable
# ENV OPENAI_API_KEY="{OpenAI-API-Key}"
# Clone the AutoGen repository
RUN git clone https://github.com/microsoft/autogen.git /home/autogen/autogen
WORKDIR /home/autogen/autogen
# Install AutoGen in editable mode with extra components
RUN sudo pip install -e .[test,teachable,lmm,retrievechat,mathchat,blendsearch]
# Install pre-commit hooks
RUN pre-commit install
# Setup Docusaurus and Yarn for the documentation website
RUN sudo npm install --global yarn
RUN sudo pip install pydoc-markdown
RUN cd website
RUN yarn install --frozen-lockfile --ignore-engines
# Exposes the Yarn port for Docusaurus
EXPOSE 3000
# Pre-load popular Python packages
RUN pip install numpy pandas matplotlib seaborn scikit-learn requests urllib3 nltk pillow pytest beautifulsoup4
# Set the default command to bash
CMD ["/bin/bash"]