Docker!

Chandler Swift, UMD ACM

https://duluth.chandlerswift.com/docker/

What is Docker?

  • "A standardized unit of software" —docker.com
  • "Docker provides a way to run applications securely isolated in a container, packaged with all its dependencies and libraries." —docs.docker.com
  • Similar to a VM, sort of:
    • A way to provide process isolation in a secure container
    • Allows limiting of CPU/memory/disk/network/hardware

What is Docker?

  • An ecosystem
  • Minimalist, often
  • Client-server architecture (here's a picture)
  • A new way of thinking?

What isn't Docker?

Resources

Neat software that uses Docker

Dockerfiles

# Taken from https://github.com/umdlars/dtanm
FROM python:3.7

RUN pip install pipenv

RUN mkdir /server
WORKDIR /server

COPY Pipfile Pipfile.lock /server/
RUN pipenv install --deploy
COPY web /server/web

ENV FLASK_APP web
ENV FLASK_ENV=development
CMD ["pipenv", "run", "flask", "run", "--host=0.0.0.0"]

Demos!

Q&A!