Skip to content

Latest commit

 

History

History
52 lines (42 loc) · 2.47 KB

readme_for_docker.md

File metadata and controls

52 lines (42 loc) · 2.47 KB

Запуск ЛР по си из-под докера

Для начала создадим Dockerfile

FROM ubuntu

RUN apt-get update && apt-get -y install \
    git gcc gdb \
    valgrind check make ffmpeg \
    python3.12 pkg-config

WORKDIR /tads

Создадим Docker образ

docker build -t tads_image .

Building 0.9s (7/7) FINISHED

Создадим Docker контейнер

docker run -t -d --name tads -v "$(pwd)":/tads/ tads_image

При успешном выполнении команды, в терминале появится номер контейнера.

Разберем эту команду

  • -t – Отвечает за создание псевдо-терминала внутри контейнера. В обычной ситуации контейнер, в котором не запущен ни один процесс, автоматически завершает свою работу, но при наличии работающего терминала, он останется активным
  • -d (--detach) отвечает за запуск контейнера в фоновом режиме (не блокируя поток ввода/вывода в окне терминала)
  • --name Позволяет задать имя нашему контейнеру (указывается после флага)
  • -v (--volume) позволяет воспользоваться крайне полезной функцией Docker - "вмонтировать папку из нашей системы в контейнер. Такая папка будет фактически являться общей для системы и для контейнера.

Откроем терминал в контейнере

docker exec -it tads bash

С помощью набора флагов -it мы получаем доступ к терминалу контейнера под названием tads и запускаем внутри него хорошо Вам знакомый bash, с помощью которого можно пользоваться любыми установленными в контейнер утилитами.

Выход из контейнера

docker rm -f tads

Источники: Docker как среда для выполнения лабораторных работ на языке C, Автор: Варченко М. А. 2023