Docker 是一个开放源代码的容器化平台,可以将应用程序和它们的依赖项打包在一个可移植的容器中,从而使其在不同的计算机上可以轻松地部署和运行。在本文中,我们将介绍如何使用 Docker 运行 C 程序。
安装 Docker
首先在您的操作系统上安装 Docker。具体步骤可以参考 Docker 的官方文档。
$ sudo apt-get update $ sudo apt-get install docker-ce
编写 C 程序
在您的本地计算机上创建一个名为 hello.c
的文件,并在其中添加以下 C 代码:
#include <stdio.h> int main() { printf("Hello, World!\n"); return 0; }
构建 Docker 镜像
现在我们需要创建一个 Docker 镜像,以便在其上运行 C 程序。在当前目录下创建一个名为 Dockerfile
的文件,并在其中添加以下代码:
FROM alpine:latest WORKDIR /app COPY hello.c /app RUN apk add --no-cache gcc musl-dev \ && gcc -o hello hello.c \ && rm -f hello.c \ && apk del gcc musl-dev CMD ["./hello"]
上述代码做了以下工作:
- 选择最新的 Alpine 镜像作为基础镜像
- 创建一个名为
/app
的工作目录,并将hello.c
文件复制到其中 - 安装 GCC 和 Musl-dev 工具包,以便编译 C 代码
- 编译生成可执行文件
- 删除源代码和安装的工具包
- 将程序的执行命令设置为
./hello
现在,我们需要构建 Docker 镜像。 打开终端,进入文件所在的目录,并运行以下命令:
$ docker build -t my-c-program .
将 Docker 容器中运行 C 程序
现在,我们已经准备好在 Docker 容器中运行我们的 C 程序。使用以下命令运行容器:
$ docker run my-c-program
输出应为:
Hello, World!
结束