You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile.docker 2.3 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. DOCKER_REGISTRY = registry.cn-shanghai.aliyuncs.com
  2. DOCKER_ORG = modelscope
  3. DOCKER_IMAGE = modelscope
  4. DOCKER_FULL_NAME = $(DOCKER_REGISTRY)/$(DOCKER_ORG)/$(DOCKER_IMAGE)
  5. # CUDA_VERSION = 11.3
  6. # CUDNN_VERSION = 8
  7. BASE_RUNTIME = reg.docker.alibaba-inc.com/pai-dlc/pytorch-training:1.10PAI-gpu-py36-cu113-ubuntu18.04
  8. # BASE_DEVEL = reg.docker.alibaba-inc.com/pai-dlc/pytorch-training:1.10PAI-gpu-py36-cu113-ubuntu18.04
  9. BASE_DEVEL = pytorch/pytorch:1.10.0-cuda11.3-cudnn8-devel
  10. MODELSCOPE_VERSION = $(shell git describe --tags --always)
  11. # Can be either official / dev
  12. BUILD_TYPE = dev
  13. BUILD_PROGRESS = auto
  14. BUILD_ARGS = --build-arg BASE_IMAGE=$(BASE_IMAGE)
  15. EXTRA_DOCKER_BUILD_FLAGS ?= --network=host
  16. # DOCKER_BUILD = DOCKER_BUILDKIT=1 \
  17. # docker build \
  18. # --progress=$(BUILD_PROGRESS) \
  19. # $(EXTRA_DOCKER_BUILD_FLAGS) \
  20. # --target $(BUILD_TYPE) \
  21. # -t $(DOCKER_FULL_NAME):$(DOCKER_TAG) \
  22. # $(BUILD_ARGS) \
  23. # -f docker/pytorch.dockerfile .
  24. DOCKER_BUILD = DOCKER_BUILDKIT=1 \
  25. docker build \
  26. $(EXTRA_DOCKER_BUILD_FLAGS) \
  27. -t $(DOCKER_FULL_NAME):$(DOCKER_TAG) \
  28. $(BUILD_ARGS) \
  29. -f docker/pytorch.dockerfile .
  30. DOCKER_PUSH = docker push $(DOCKER_FULL_NAME):$(DOCKER_TAG)
  31. .PHONY: all
  32. all: devel-image
  33. .PHONY: devel-image
  34. devel-image: BASE_IMAGE := $(BASE_DEVEL)
  35. devel-image: DOCKER_TAG := $(MODELSCOPE_VERSION)-devel
  36. devel-image:
  37. $(DOCKER_BUILD)
  38. .PHONY: devel-push
  39. devel-push: BASE_IMAGE := $(BASE_DEVEL)
  40. devel-push: DOCKER_TAG := $(MODELSCOPE_VERSION)-devel
  41. devel-push:
  42. $(DOCKER_PUSH)
  43. .PHONY: runtime-image
  44. runtime-image: BASE_IMAGE := $(BASE_RUNTIME)
  45. runtime-image: DOCKER_TAG := $(MODELSCOPE_VERSION)-runtime
  46. runtime-image:
  47. $(DOCKER_BUILD)
  48. docker tag $(DOCKER_FULL_NAME):$(DOCKER_TAG) $(DOCKER_FULL_NAME):latest
  49. .PHONY: runtime-push
  50. runtime-push: BASE_IMAGE := $(BASE_RUNTIME)
  51. runtime-push: DOCKER_TAG := $(MODELSCOPE_VERSION)-runtime
  52. runtime-push:
  53. $(DOCKER_PUSH)
  54. .PHONY: clean
  55. clean:
  56. -docker rmi -f $(shell docker images -q $(DOCKER_FULL_NAME))