Skip to content

Commit 9aadc9e

Browse files
Copilotjpayne3506
andcommitted
Move Docker image generation documentation to doc/README.md
Co-authored-by: jpayne3506 <[email protected]>
1 parent cecb16b commit 9aadc9e

File tree

2 files changed

+60
-57
lines changed

2 files changed

+60
-57
lines changed

README.md

Lines changed: 1 addition & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -39,63 +39,7 @@ $ make all-binaries
3939
Then follow the instructions for the plugin in [Documentation](docs/).
4040

4141
## Docker Image Generation
42-
This repository supports building Docker container images for networking components using standardized make recipes. The build system uses Docker or Podman to create multi-platform images.
43-
44-
### Prerequisites
45-
- Docker or Podman installed and running
46-
- For multi-platform builds: `make qemu-user-static` (Linux only)
47-
48-
### Available Components
49-
- **acncli** - CNI manager
50-
- **azure-ipam** - Azure IP Address Management
51-
- **cni** - Container Network Interface
52-
- **cns** - Container Network Service
53-
- **npm** - Network Policy Manager
54-
- **ipv6-hp-bpf** - IPv6 Host Policy BPF
55-
56-
### Generic Build Pattern
57-
All components follow the same make recipe pattern:
58-
59-
```bash
60-
# Build container image
61-
$ make <component>-image
62-
63-
# View image name and tag
64-
$ make <component>-image-name-and-tag
65-
66-
# Push image to registry
67-
$ make <component>-image-push
68-
69-
# Pull image from registry
70-
$ make <component>-image-pull
71-
72-
# Build multi-platform manifest
73-
$ make <component>-manifest-build
74-
$ make <component>-manifest-push
75-
```
76-
77-
### Example Usage
78-
```bash
79-
# Build CNS image
80-
$ make cns-image
81-
82-
# Build NPM image with custom platform
83-
$ PLATFORM=linux/arm64 make npm-image
84-
85-
# Build Azure-IPAM image with custom registry
86-
$ IMAGE_REGISTRY=myregistry.azurecr.io make azure-ipam-image
87-
88-
# Use Podman instead of Docker
89-
$ CONTAINER_BUILDER=podman make cni-image
90-
```
91-
92-
### Customization
93-
Environment variables for customizing builds:
94-
- `PLATFORM` - Target platform/architecture (default: linux/amd64)
95-
- `IMAGE_REGISTRY` - Custom registry (default: acnpublic.azurecr.io)
96-
- `CONTAINER_BUILDER` - Container builder (default: docker, alternative: podman)
97-
98-
Images are tagged with platform and version information and published to the configured registry.
42+
See [Docker Image Generation](doc/README.md) for instructions on building container images for networking components.
9943

10044
## Contributions
10145
Contributions in the form of bug reports, feature requests and PRs are always welcome.

doc/README.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# Docker Image Generation
2+
3+
This repository supports building Docker container images for networking components using standardized make recipes. The build system uses Docker or Podman to create multi-platform images.
4+
5+
## Prerequisites
6+
- Docker or Podman installed and running
7+
- For multi-platform builds: `make qemu-user-static` (Linux only)
8+
9+
## Available Components
10+
- **acncli** - CNI manager
11+
- **azure-ipam** - Azure IP Address Management
12+
- **cni** - Container Network Interface
13+
- **cns** - Container Network Service
14+
- **npm** - Network Policy Manager
15+
- **ipv6-hp-bpf** - IPv6 Host Policy BPF
16+
17+
## Generic Build Pattern
18+
All components follow the same make recipe pattern:
19+
20+
```bash
21+
# Build container image
22+
$ make <component>-image
23+
24+
# View image name and tag
25+
$ make <component>-image-name-and-tag
26+
27+
# Push image to registry
28+
$ make <component>-image-push
29+
30+
# Pull image from registry
31+
$ make <component>-image-pull
32+
33+
# Build multi-platform manifest
34+
$ make <component>-manifest-build
35+
$ make <component>-manifest-push
36+
```
37+
38+
## Example Usage
39+
```bash
40+
# Build CNS image
41+
$ make cns-image
42+
43+
# Build NPM image with custom platform
44+
$ PLATFORM=linux/arm64 make npm-image
45+
46+
# Build Azure-IPAM image with custom registry
47+
$ IMAGE_REGISTRY=myregistry.azurecr.io make azure-ipam-image
48+
49+
# Use Podman instead of Docker
50+
$ CONTAINER_BUILDER=podman make cni-image
51+
```
52+
53+
## Customization
54+
Environment variables for customizing builds:
55+
- `PLATFORM` - Target platform/architecture (default: linux/amd64)
56+
- `IMAGE_REGISTRY` - Custom registry (default: acnpublic.azurecr.io)
57+
- `CONTAINER_BUILDER` - Container builder (default: docker, alternative: podman)
58+
59+
Images are tagged with platform and version information and published to the configured registry.

0 commit comments

Comments
 (0)