使用make一键创建并管理docker镜像和容器

YouTube视频讲解:

B站视频:

https://www.bilibili.com/video/BV1mw41117ER/

Makefile:

IMAGE_NAME=my-nginx
IMAGE_TAG=v1.0
CONTAINER_NAME=my-nginx-container

# 默认目标,构建 Docker 镜像
all: build

# 构建 Docker 镜像
build:
        docker build -t $(IMAGE_NAME):$(IMAGE_TAG) .

# 运行 Docker 容器
run:
        docker run -d --name $(CONTAINER_NAME) -p 80:80 $(IMAGE_NAME):$(IMAGE_TAG)

# 停止 Docker 容器
stop:
        docker stop $(CONTAINER_NAME)

# 清除 Docker 镜像+container
clean:
        docker rm $(CONTAINER_NAME)
        docker rmi $(IMAGE_NAME):$(IMAGE_TAG)


.PHONY: all build run stop clean

在此 Makefile 中:

  1. all 是默认目标,它依赖于 run 目标。
  2. 使用 make build 或简单的 make 可以构建 Docker 镜像。
  3. 使用 make run 可以运行一个 Nginx 容器。容器将监听主机的 80 端口,并映射到容器的 80 端口。
  4. 使用 make stop 可以停止并删除 Nginx 容器。
  5. 使用 make clean 可以删除创建的 Docker 容器以及镜像。

有了这个‘Makefile’, 你就可以非常简单地通过‘make命令’来构建镜像并使用docker容器!

Dockerfile 按需修改即可:
FROM nginx:latest

EXPOSE 80

分享你的喜爱

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注