1、安装Docker
参考文档:
2、C/C++的Docker镜像
镜像基于 Alpine Linux 镜像,只有 5MB 镜像,并且包含 C/C++ 编译器(gcc/g++ 包)。获取C/C++的docker镜像,有两种方式,一种是通过docker pull命令获取,另一种是通过Dockerfile文件创建,具体如下,
1)使用docker pull命令
使用docker pull命令获取https://hub.docker.com/
中存储公共镜像,如下,
docker pull frolvlad/alpine-gxx
注意:使用docker run
命令时,如果镜像本地不存会自动调用docker pull
获取镜像。
2)使用Dockerfile文件创建
Dockerfile文件:
FROM alpine:3.14 RUN apk add --no-cache gcc musl-dev RUN apk add --no-cache g++
生成本地镜像:
docker build -t cjavapy/alpine-gxx .
3、C/C++的Docker容器
创建容器可以使用https://hub.docker.com/上的frolvlad/alpine-gxx
镜像,也可以使用上面我们通过Dockerfile文件创建的本地镜像。
1)使用frolvlad/alpine-gxx镜像
$ echo -e '#include <iostream>\nint main() { std::cout << "Hello World\\n"; }' > sample.cpp
$ docker run --rm -v `pwd`:/tmp frolvlad/alpine-gxx c++ --static /tmp/sample.cpp -o /tmp/sample
2)使用cjavapy/alpine-gxx镜像
$ echo -e '#include <iostream>\nint main() { std::cout << "Hello World\\n"; }' > sample.cpp
$ docker run --rm -v `pwd`:/tmp cjavapy/alpine-gxx c++ --static /tmp/sample.cpp -o /tmp/sample
相关文档: