Yandex.Praktikum CPP

Базовый docker: ubuntu gcc cmake


Подготовка

MacOs

Todo: Linux

...

Todo: Windows

...

Настройка

  • создать директорию для проекта, например так
mkdir -p ~/my_docker_projects
cd ~/my_docker_projects
  • клонировать github репозиторий
git clone https://github.com/chistopat/praktikum-cpp-base-image
cd praktikum-cpp-base-image
  • собрать докер образ
docker build . -t praktikum-cpp
  • убедиться что образ создан
chistopat@macmini praktikum-cpp-base-image % docker images
REPOSITORY          TAG         IMAGE ID       CREATED         SIZE
praktikum-cpp       latest      1dd1f173a89a   21 hours ago    607MB
  • запустить контейнер
 docker run --rm -it -v $(pwd):/praktikum/src praktikum-cpp
  • проверить что внутри контенера доступна рабочая директория
root@eb4c6d286ef5:/# cd /praktikum/src
root@eb4c6d286ef5:/praktikum/src# ls
Dockerfile  LICENSE  README.md  main.cpp
  • скомпилировать проект
g++ -g -std=c++17 /praktikum/src/main.cpp -pthread -ltbb -o /praktikum/src/main
  • запустить бинарник
root@54efca28f291:/# cd praktikum/src/    
root@54efca28f291:/praktikum/src# ./main
std::accumulate execution time: 7497 ms.
std::reduce execution time: 6410 ms.